Re: cannot to compile PL/V8 on Fedora 20

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, Peter Eisentraut <peter_e(at)gmx(dot)net>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: cannot to compile PL/V8 on Fedora 20
Date: 2014-05-12 15:05:32
Message-ID: CAFj8pRA=h9E1hy7gMfQtRy+hK=yjK=CeN-5w59LF9qOitt1ELA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

2014-05-12 16:31 GMT+02:00 Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>:

> Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
> > On 05/12/2014 07:10 AM, Pavel Stehule wrote:
> >> I am trying to compile PL/v8 without success. I have Postgres
> >> installed via compilation from source code.
>
> >> plv8.cc:50:56: error: declaration of ‘Datum
> >> plv8_call_handler(FunctionCallInfo) throw ()’ has a different
> >> exception specifier
> >> Datum plv8_call_handler(PG_FUNCTION_ARGS) throw();
> >> ^
> >> plv8.cc:43:7: error: from previous declaration ‘Datum
> >> plv8_call_handler(FunctionCallInfo)’
> >> PG_FUNCTION_INFO_V1(plv8_call_handler);
>
> > This looks like a result of commit
> > <
> http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=e7128e8dbb305059c30ec085461297e619bcbff4
> >
>
> Ouch. I was a bit suspicious of that change from the start, but it hadn't
> occurred to me that functions written in C++ would have an issue with it.
>
> > Maybe we need a way of telling the preprocessor to suppress the
> > generation of a prototype?
>
> Maybe we need to revert that patch altogether. Dealing with this is
> likely to introduce much more pain and confusion than the change is worth.
>

After returning back before this commit I cannot compile PL/V8 still but
with more solvable bug

g++ -Wall -O2 -I. -I./ -I/usr/local/pgsql/include/server
-I/usr/local/pgsql/include/internal -D_GNU_SOURCE -I/usr/include/libxml2
-fPIC -c -o plv8.o plv8.cc
g++ -Wall -O2 -I. -I./ -I/usr/local/pgsql/include/server
-I/usr/local/pgsql/include/internal -D_GNU_SOURCE -I/usr/include/libxml2
-fPIC -c -o plv8_type.o plv8_type.cc
g++ -Wall -O2 -I. -I./ -I/usr/local/pgsql/include/server
-I/usr/local/pgsql/include/internal -D_GNU_SOURCE -I/usr/include/libxml2
-fPIC -c -o plv8_func.o plv8_func.cc
plv8_func.cc: In function ‘v8::Handle<v8::Value> plv8_Prepare(const
v8::Arguments&)’:
plv8_func.cc:521:47: error: too few arguments to function ‘void
parseTypeString(const char*, Oid*, int32*, bool)’
parseTypeString(typestr, &types[i], &typemod);
^
In file included from plv8_func.cc:22:0:
/usr/local/pgsql/include/server/parser/parse_type.h:50:13: note: declared
here
extern void parseTypeString(const char *str, Oid *typeid_p, int32
*typmod_p, bool missing_ok);
^
make: *** [plv8_func.o] Error 1

so the main issue is really this commit

Regards

Pavel

p.s. my tests on 9.2 was messy probably

>
> regards, tom lane
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2014-05-12 15:09:49 Re: Proposal for CSN based snapshots
Previous Message Heikki Linnakangas 2014-05-12 15:01:59 Re: Proposal for CSN based snapshots