Re: [HACKERS] Compiling PL/Perl and Pl/Python on x86_64
On Sun, 21 May 2006 16:35:24 -0700 (PDT) gede wawan [EMAIL PROTECTED] wrote: relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC May I ask how? I have tried to edit src/makefiles/Makefile.linux and changed -fpic to -fPIC, but it does not help. Maybe I should set the flag elsewhere? Actually, I have made some tests. I found that in the PostgreSQL document, Perl must be built as shared library: 14.2. Requirements To build the server programming language PL/Perl you need a full Perl installation, including the libperl library and the header files. Since PL/Perl will be a shared library, the libperl library must be a shared library also on most platforms. This appears to be the default in recent Perl versions, but it was not in earlier versions, and in any case it is the choice of whomever installed Perl at your site. But, on my i386 machine, I can build PL/Perl with static library (libperl.a). But I can't do that on x86_64 anymore. Can somebody tell me why, or where should I referring to? The same issue goes to PL/Python. I'm not good at Python, but I know that I was building static library before, and it works for PL/Python on i386. But it does not work anymore on x86_64, too. -- Best regards, imacat ^_*' [EMAIL PROTECTED] PGP Key: http://www.imacat.idv.tw/me/pgpkey.txt Woman's Voice News: http://www.wov.idv.tw/ Tavern IMACAT's: http://www.imacat.idv.tw/ TLUG List Manager: http://lists.linux.org.tw/cgi-bin/mailman/listinfo/tlug pgpCS9MDZ9afj.pgp Description: PGP signature
Re: [HACKERS] Compiling PL/Perl and Pl/Python on x86_64
On Mon, 08 May 2006 03:58:54 +0800 imacat [EMAIL PROTECTED] wrote: On Sun, 07 May 2006 13:09:48 -0400 Tom Lane [EMAIL PROTECTED] wrote: imacat [EMAIL PROTECTED] writes: I cannot compile PL/Perl and PL/Python under x86_64. Works fine for me (without any tinkering with flags) on Fedora Core 4. Will... thank you for the hint. I have tested to build with the I have successfully compiled with a shared Perl/Python libraries. Thank you for your hint. But now I have another question. Why can't I link PL/Perl and PL/Python against the static Perl/Python libraries, as I did on 32-bit machines? I have added -fPIC when linking Perl statically, but it still doesn't work. Is ther any reason that it doesn't work to link that way? -- Best regards, imacat ^_*' [EMAIL PROTECTED] PGP Key: http://www.imacat.idv.tw/me/pgpkey.txt Woman's Voice News: http://www.wov.idv.tw/ Tavern IMACAT's: http://www.imacat.idv.tw/ TLUG List Manager: http://lists.linux.org.tw/cgi-bin/mailman/listinfo/tlug pgpsOCu9TWTjB.pgp Description: PGP signature
[HACKERS] Compiling PL/Perl and Pl/Python on x86_64
: could not read symbols: Bad value collect2: ld returned 1 exit status make[3]: *** [libplperl.so.0.0] Error 1 ... ... make[3]: Entering directory `/tmp/postgresql-8.1.3/src/pl/plpython' gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fPIC -shared -Wl,-soname,libplpython.so.0 plpython.o -L/usr/lib/python2.4/config -L../../../src/port -lpython2.4 -lpthread -ldl -lutil -lm -Wl,-rpath,/usr/lib/python2.4/config -o libplpython.so.0.0 /usr/bin/ld: /usr/lib/python2.4/config/libpython2.4.a(abstract.o): relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC /usr/lib/python2.4/config/libpython2.4.a: could not read symbols: Bad value collect2: ld returned 1 exit status make[3]: *** [libplpython.so.0.0] Error 1 ... I'm out of ideas. Is there anyone know which flags to add to or where my mistake is? Thank you. -- Best regards, imacat ^_*' [EMAIL PROTECTED] PGP Key: http://www.imacat.idv.tw/me/pgpkey.txt Woman's Voice News: http://www.wov.idv.tw/ Tavern IMACAT's: http://www.imacat.idv.tw/ TLUG List Manager: http://lists.linux.org.tw/cgi-bin/mailman/listinfo/tlug pgptETzZNXAij.pgp Description: PGP signature
Re: [HACKERS] Compiling PL/Perl and Pl/Python on x86_64
On Sun, 07 May 2006 13:09:48 -0400 Tom Lane [EMAIL PROTECTED] wrote: imacat [EMAIL PROTECTED] writes: I cannot compile PL/Perl and PL/Python under x86_64. Works fine for me (without any tinkering with flags) on Fedora Core 4. Maybe you don't have 64-bit versions of the perl and python libraries? Will... thank you for the hint. I have tested to build with the precompiled binary perl 5.8.4 that comes with the Debian distribution, and it works. It now seems that the problem resides on my perl compilation. I'll go for that direction. -- Best regards, imacat ^_*' [EMAIL PROTECTED] PGP Key: http://www.imacat.idv.tw/me/pgpkey.txt Woman's Voice News: http://www.wov.idv.tw/ Tavern IMACAT's: http://www.imacat.idv.tw/ TLUG List Manager: http://lists.linux.org.tw/cgi-bin/mailman/listinfo/tlug pgpvnk5Hrg97u.pgp Description: PGP signature