Re: [HACKERS] Compiling tsearch2 on AIX
Mag Gam <[EMAIL PROTECTED]> writes: > I had to modify this line in the tsearch2 Makefile > from > SHLIB_LINK := -lm > to > SHLIB_LINK := -lm -lpgport Hmm, that's annoying. I was about to commit this change but it actively fails on my machine: /usr/ccs/bin/ld: DP relative code in file ../../src/port/libpgport.a(exec.o) - shared library must be position independent. Use +z or +Z to recompile. make: *** [libtsearch2.sl.0] Error 1 So we need to think harder. I wonder why the libpgport symbols aren't getting picked up from the backend itself on your machine? regards, tom lane ---(end of broadcast)--- TIP 4: Don't 'kill -9' the postmaster
Re: [HACKERS] Compiling tsearch2 on AIX
Tom: Got it working! I had to modify this line in the tsearch2 Makefile from SHLIB_LINK := -lm to SHLIB_LINK := -lm -lpgport it works like a charm! thanks for your help! On 5/18/05, Mag Gam <[EMAIL PROTECTED]> wrote: > Thanks for the reply Tom! > > I managed to get the cvs version and I made more progress compiling tsearch2 > > Here is where it errors out. > > > > touch libtsearch2.a > ../../src/backend/port/aix/mkldexport.sh libtsearch2.a > libtsearch2.exp > gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels > -fno-strict-aliasing -Wl,-bnoentry -Wl,-H512 -Wl,-bM:SRE -o > libtsearch2.so libtsearch2.a -L../../src/port -L../../src/port -lm > -Wl,-bI:../../src/backend/postgres.imp -Wl,-bE:libtsearch2.exp > ld: 0711-317 ERROR: Undefined symbol: .get_share_path > ld: 0711-317 ERROR: Undefined symbol: .pg_strncasecmp > ld: 0711-317 ERROR: Undefined symbol: .pg_strcasecmp > ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. > collect2: ld returned 8 exit status > gmake: *** [libtsearch2.so] Error 1 > > Any ideas? > > TIA > > > On 5/17/05, Tom Lane <[EMAIL PROTECTED]> wrote: > > Mag Gam <[EMAIL PROTECTED]> writes: > > > I am trying to compile PostgreSQL 8.0.3/tsearch2 contrib module on AIX > > > 5.2 ML 3 > > > > > /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:484: > > > error: conflicting types for `fgetpos64' > > > /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:310: > > > error: previous declaration of `fgetpos64' > > > > I'm just guessing, but this smells to me like a problem with largefile- > > vs-not-largefile support. We discovered long ago that when pg_config.h > > defines _FILE_OFFSET_BITS or _LARGEFILE_SOURCE, it's critical that the > > compiler see that *before* it includes stdio.h. Unfortunately it seems > > this hard-won knowledge didn't get propagated into tsearch2 until just > > recently :-(. Try applying the tsearch2 changes linked here: > > http://archives.postgresql.org/pgsql-committers/2005-05/msg00068.php > > and let us know if that helps. I have not back-patched these changes > > into existing release branches, but if it turns out to address a real > > problem-seen-in-the-field then that should get done ... > > > > regards, tom lane > > > ---(end of broadcast)--- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
Re: [HACKERS] Compiling tsearch2 on AIX
Thanks for the reply Tom! I managed to get the cvs version and I made more progress compiling tsearch2 Here is where it errors out. touch libtsearch2.a ../../src/backend/port/aix/mkldexport.sh libtsearch2.a > libtsearch2.exp gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -fno-strict-aliasing -Wl,-bnoentry -Wl,-H512 -Wl,-bM:SRE -o libtsearch2.so libtsearch2.a -L../../src/port -L../../src/port -lm -Wl,-bI:../../src/backend/postgres.imp -Wl,-bE:libtsearch2.exp ld: 0711-317 ERROR: Undefined symbol: .get_share_path ld: 0711-317 ERROR: Undefined symbol: .pg_strncasecmp ld: 0711-317 ERROR: Undefined symbol: .pg_strcasecmp ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. collect2: ld returned 8 exit status gmake: *** [libtsearch2.so] Error 1 Any ideas? TIA On 5/17/05, Tom Lane <[EMAIL PROTECTED]> wrote: > Mag Gam <[EMAIL PROTECTED]> writes: > > I am trying to compile PostgreSQL 8.0.3/tsearch2 contrib module on AIX 5.2 > > ML 3 > > > /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:484: > > error: conflicting types for `fgetpos64' > > /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:310: > > error: previous declaration of `fgetpos64' > > I'm just guessing, but this smells to me like a problem with largefile- > vs-not-largefile support. We discovered long ago that when pg_config.h > defines _FILE_OFFSET_BITS or _LARGEFILE_SOURCE, it's critical that the > compiler see that *before* it includes stdio.h. Unfortunately it seems > this hard-won knowledge didn't get propagated into tsearch2 until just > recently :-(. Try applying the tsearch2 changes linked here: > http://archives.postgresql.org/pgsql-committers/2005-05/msg00068.php > and let us know if that helps. I have not back-patched these changes > into existing release branches, but if it turns out to address a real > problem-seen-in-the-field then that should get done ... > > regards, tom lane > ---(end of broadcast)--- TIP 7: don't forget to increase your free space map settings
Re: [HACKERS] Compiling tsearch2 on AIX
Mag Gam <[EMAIL PROTECTED]> writes: > I am trying to compile PostgreSQL 8.0.3/tsearch2 contrib module on AIX 5.2 ML > 3 > /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:484: > error: conflicting types for `fgetpos64' > /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:310: > error: previous declaration of `fgetpos64' I'm just guessing, but this smells to me like a problem with largefile- vs-not-largefile support. We discovered long ago that when pg_config.h defines _FILE_OFFSET_BITS or _LARGEFILE_SOURCE, it's critical that the compiler see that *before* it includes stdio.h. Unfortunately it seems this hard-won knowledge didn't get propagated into tsearch2 until just recently :-(. Try applying the tsearch2 changes linked here: http://archives.postgresql.org/pgsql-committers/2005-05/msg00068.php and let us know if that helps. I have not back-patched these changes into existing release branches, but if it turns out to address a real problem-seen-in-the-field then that should get done ... regards, tom lane ---(end of broadcast)--- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match
[HACKERS] Compiling tsearch2 on AIX
I am trying to compile PostgreSQL 8.0.3/tsearch2 contrib module on AIX 5.2 ML 3 gcc version 3.3.2 GNU Make 3.80 bash-2.05b# gmake gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -fno-strict-aliasing -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o dict_ex.o dict_ex.c In file included from ../../src/include/c.h:64, from ../../src/include/postgres.h:48, from dict_ex.c:9: /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:484: error: conflicting types for `fgetpos64' /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:310: error: previous declaration of `fgetpos64' /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:487: error: conflicting types for `fseeko64' /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:430: error: previous declaration of `fseeko64' /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:488: error: conflicting types for `fsetpos64' /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:312: error: previous declaration of `fsetpos64' /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:489: error: conflicting types for `ftello64' /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.2.0.0/3.3.2/include/stdio.h:431: error: previous declaration of `ftello64' gmake: *** [dict_ex.o] Error 1 Can someone please let me know why this is happening? ---(end of broadcast)--- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])