Обсуждение: BUG #7522: ecpg build error

Поиск
Список
Период
Сортировка

BUG #7522: ecpg build error

От
iradu@unix-world.org
Дата:
The following bug has been logged on the website:

Bug reference:      7522
Logged by:          Radu Ovidiu
Email address:      iradu@unix-world.org
PostgreSQL version: 9.0.9
Operating system:   NetBSD
Description:        =


Hi,
I am trying to build the PostgreSQL 9.0.9 over NetBSD 5.1.2 (64-bit).
I got the following error.
I tried to compile the 9.1.5 and still the same error.
The 8.3.17 and 8.4.11 (are OK) they are compiling with no errors (under the
same build script).
Cand be this because I am using one of this flags: -O2 -fPIC -m64 ?
It should not be because under the same build system I am compiling
successfully all other software (includding PostgreSQL 8.x) but the 9.x
throws this error. Perhaps you forgot to mention (define) somewhere these
variables (ECPGt_string and ECPGt_sqlda) ?


#### The compile error (PostgreSQL 9.x):
...
rm -f thread.c && ln -s ../../../src/port/thread.c .
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -DFRONTEND -DUNSAFE_STAT_OK -I.
-I../../../src/include -O2 -fPIC -m64 -I/opt/unixw/include
-I/opt/unixw/include/libxml2  -I/opt/unixw -I../../../src/port
-I../../../src/port -DSO_MAJOR_VERSION=3D5  -c -o thread.o thread.c -MMD -MP
-MF .deps/thread.Po
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -shared -Wl,-x,-soname,libpq.so.5 -o
libpq.so.5.3 fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o
fe-protocol2.o fe-protocol3.o pqexpbuffer.o pqsignal.o fe-secure.o
libpq-events.o md5.o ip.o wchar.o encnames.o noblock.o pgstrcasecmp.o
thread.o  -L../../../src/port -O2 -fPIC -m64 -R/opt/unixw/lib
-L/opt/unixw/lib -L/opt/unixw/lib  -L/opt/unixw -Wl,--as-needed
-Wl,-R'/opt/unixw/lib'  -lssl -lcrypto -lcrypt  -lpthread     =

rm -f libpq.so.5
ln -s libpq.so.5.3 libpq.so.5
rm -f libpq.so
ln -s libpq.so.5.3 libpq.so
ar cr libpq.a fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-print.o
fe-lobj.o fe-protocol2.o fe-protocol3.o pqexpbuffer.o pqsignal.o fe-secure.o
libpq-events.o md5.o ip.o wchar.o encnames.o noblock.o pgstrcasecmp.o
thread.o
ranlib libpq.a
gmake[3]: Leaving directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/libpq'
gmake[3]: Entering directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg'
/opt/unixw/bin/gmake -C include all
gmake[4]: Entering directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/include'
gmake[4]: Nothing to be done for `all'.
gmake[4]: Leaving directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/include'
/opt/unixw/bin/gmake -C pgtypeslib all
gmake[4]: Entering directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/pgtypeslib'
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils
-I../../../../src/interfaces/libpq -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D3  -c -o numeric.o numeric.c -MMD -MP -MF
.deps/numeric.Po
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils
-I../../../../src/interfaces/libpq -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D3  -c -o datetime.o datetime.c -MMD -MP -MF
.deps/datetime.Po
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils
-I../../../../src/interfaces/libpq -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D3  -c -o common.o common.c -MMD -MP -MF .deps/common.Po
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils
-I../../../../src/interfaces/libpq -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D3  -c -o dt_common.o dt_common.c -MMD -MP -MF
.deps/dt_common.Po
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils
-I../../../../src/interfaces/libpq -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D3  -c -o timestamp.o timestamp.c -MMD -MP -MF
.deps/timestamp.Po
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils
-I../../../../src/interfaces/libpq -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D3  -c -o interval.o interval.c -MMD -MP -MF
.deps/interval.Po
rm -f pgstrcasecmp.c && ln -s ../../../../src/port/pgstrcasecmp.c .
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils
-I../../../../src/interfaces/libpq -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D3  -c -o pgstrcasecmp.o pgstrcasecmp.c -MMD -MP -MF
.deps/pgstrcasecmp.Po
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -shared
-Wl,-x,-soname,libpgtypes.so.3 -o libpgtypes.so.3.1 numeric.o datetime.o
common.o dt_common.o timestamp.o interval.o pgstrcasecmp.o =

-L../../../../src/port -O2 -fPIC -m64 -R/opt/unixw/lib -L/opt/unixw/lib
-L/opt/unixw/lib  -L/opt/unixw -Wl,--as-needed -Wl,-R'/opt/unixw/lib'  -lm
rm -f libpgtypes.so.3
ln -s libpgtypes.so.3.1 libpgtypes.so.3
rm -f libpgtypes.so
ln -s libpgtypes.so.3.1 libpgtypes.so
ar cr libpgtypes.a numeric.o datetime.o common.o dt_common.o timestamp.o
interval.o pgstrcasecmp.o
ranlib libpgtypes.a
gmake[4]: Leaving directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/pgtypeslib'
/opt/unixw/bin/gmake -C ecpglib all
gmake[4]: Entering directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/ecpglib'
/opt/unixw/bin/gmake -C ../../../../src/interfaces/libpq all
gmake[5]: Entering directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/libpq'
gmake[5]: Nothing to be done for `all'.
gmake[5]: Leaving directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/libpq'
/opt/unixw/bin/gmake -C ../../../../src/interfaces/ecpg/pgtypeslib all
gmake[5]: Entering directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/pgtypeslib'
gmake[5]: Nothing to be done for `all'.
gmake[5]: Leaving directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/pgtypeslib'
gcc -O2 -fPIC -m64 -I/opt/unixw/include -Wall -Wmissing-prototypes
-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-fno-strict-aliasing -fwrapv -pthread  -D_REENTRANT -D_THREAD_SAFE
-D_POSIX_PTHREAD_SEMANTICS -fpic -DPIC -I../include
-I../../../../src/interfaces/ecpg/include -I../../../../src/interfaces/libpq
-I../../../../src/port -I../../../../src/include -O2 -fPIC -m64
-I/opt/unixw/include -I/opt/unixw/include/libxml2  -I/opt/unixw
-DSO_MAJOR_VERSION=3D6  -c -o execute.o execute.c -MMD -MP -MF
.deps/execute.Po
execute.c: In function 'ecpg_store_result':
execute.c:366: error: 'ECPGt_string' undeclared (first use in this
function)
execute.c:366: error: (Each undeclared identifier is reported only once
execute.c:366: error: for each function it appears in.)
execute.c: In function 'ecpg_store_input':
execute.c:797: error: 'ECPGt_string' undeclared (first use in this
function)
execute.c:1072: error: 'ECPGt_sqlda' undeclared (first use in this
function)
execute.c: In function 'ecpg_execute':
execute.c:1212: error: 'ECPGt_sqlda' undeclared (first use in this
function)
gmake[4]: *** [execute.o] Error 1
gmake[4]: Leaving directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg/ecpglib'
gmake[3]: *** [all] Error 2
gmake[3]: Leaving directory
`/_SRC/pgsql/postgresql-9.0.9/src/interfaces/ecpg'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/_SRC/pgsql/postgresql-9.0.9/src/interfaces'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/_SRC/pgsql/postgresql-9.0.9/src'
gmake: *** [all] Error 2
### End of error

Cheers,
Radu

Re: BUG #7522: ecpg build error

От
Tom Lane
Дата:
iradu@unix-world.org writes:
> I am trying to build the PostgreSQL 9.0.9 over NetBSD 5.1.2 (64-bit).
> I got the following error.
> I tried to compile the 9.1.5 and still the same error.
> The 8.3.17 and 8.4.11 (are OK) they are compiling with no errors (under the
> same build script).

ECPGt_string is defined in ecpgtype.h in 9.0 and later.  I am betting
that you have a pre-9.0 copy of that file somewhere where it's being
found in preference to the intended version.

            regards, tom lane

Re: BUG #7522: ecpg build error

От
Radu Ovidiu Ilies
Дата:
Yes, you are right.
After I checked the sha1 of file I found was modified.
It was downloaded from other location than postgresql and was named postgres=
ql-9.0.9.tar.bz2, but was not the final.
After I downloaded the original from postgresql.org everything works smooth.=

Thanks,
Radu



On Sep 7, 2012, at 7:59, Tom Lane <tgl@sss.pgh.pa.us> wrote:

> iradu@unix-world.org writes:
>> I am trying to build the PostgreSQL 9.0.9 over NetBSD 5.1.2 (64-bit).
>> I got the following error.
>> I tried to compile the 9.1.5 and still the same error.
>> The 8.3.17 and 8.4.11 (are OK) they are compiling with no errors (under t=
he
>> same build script).
>=20
> ECPGt_string is defined in ecpgtype.h in 9.0 and later.  I am betting
> that you have a pre-9.0 copy of that file somewhere where it's being
> found in preference to the intended version.
>=20
>            regards, tom lane