Date: Mon, 20 Apr 1998 14:40:39 -0700 From: Ken Neighbors <ken@best.com> To: freebsd-questions@FreeBSD.ORG Subject: perl extension cannot find standard shared library Message-ID: <353BC0D7.F953168C@best.com>
next in thread | raw e-mail | index | archive | help
I'm trying to install the perl extension SPGrove in my ISP account at best.com which runs FreeBSD 2.2.6-STABLE. I was able to install it on Debian GNU/Linux 1.3.1 and on Sun Solaris 2.5.1 without major problems, but this one on FreeBSD has me stuck: ------------------- shell9: make test PERL_DL_NONLAZY=1 /usr/local/bin/perl5 -I./blib/arch -I./blib/lib -I/usr/local/lib/perl5/i386-freebsd/5.00404 -I/usr/local/lib/perl5 test.pl 1..2 Can't load './blib/arch/auto/SGML/SPGrove/SPGrove.so' for module SGML::SPGrove: Undefined symbol "___builtin_vec_delete" in perl5:./blib/arch/auto/SGML/SPGrove/SPGrove.so at /usr/local/lib/perl5/i386-freebsd/5.00404/DynaLoader.pm line 166. at test.pl line 18 BEGIN failed--compilation aborted at test.pl line 18. not ok 1 *** Error code 2 Stop. ------------------- I emailed the author of SPGrove (Ken MacLeod) and he said Perl's MakeMaker was not using the right linking options or maybe gcc was configured wrong and that I might be able to fix it by manually setting LD_LIBRARY_PATH, but I tried that and it didn't work (I didn't expect it too, since I was pretty sure the runtime-loader was looking in /usr/lib where I see libg++.so.4.0 and libstdc++.so.2.0. If it will help, here's what appeared when compiling the extension: ------------------- shell9: make mkdir ./blib mkdir ./blib/lib mkdir ./blib/lib/SGML cp SData.pm ./blib/lib/SGML/SData.pm cp Entity.pm ./blib/lib/SGML/Entity.pm cp SubDocEntity.pm ./blib/lib/SGML/SubDocEntity.pm cp Writer.pm ./blib/lib/SGML/Writer.pm cp ExtEntity.pm ./blib/lib/SGML/ExtEntity.pm cp SPGrove.pm ./blib/lib/SGML/SPGrove.pm cp Simple/BuilderBuilder.pm ./blib/lib/SGML/Simple/BuilderBuilder.pm cp PI.pm ./blib/lib/SGML/PI.pm cp Element.pm ./blib/lib/SGML/Element.pm cp Simple/SpecBuilder.pm ./blib/lib/SGML/Simple/SpecBuilder.pm cp Simple/Spec.pm ./blib/lib/SGML/Simple/Spec.pm cp Notation.pm ./blib/lib/SGML/Notation.pm /usr/local/bin/perl5 -I/usr/local/lib/perl5/i386-freebsd/5.00404 -I/usr/local/lib/perl5 /usr/local/lib/perl5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/ExtUtils/typemap SPGrove.xs >SPGrove.tc && mv SPGrove.tc SPGrove.c Please specify prototyping behavior for SPGrove.xs (see perlxs manual) cc -c -I../sp-1.3/lib -I../sp-1.3/generic -I../sp-1.3/include -I/usr/local/include -O -DVERSION=\"1.00\" -DXS_VERSION=\"1.00\" -DPIC -fpic -I/usr/local/lib/perl5/i386-freebsd/5.00404/CORE -DSP_MULTI_BYTE SPGrove.c cc -c -I../sp-1.3/lib -I../sp-1.3/generic -I../sp-1.3/include -I/usr/local/include -O -DVERSION=\"1.00\" -DXS_VERSION=\"1.00\" -DPIC -fpic -I/usr/local/lib/perl5/i386-freebsd/5.00404/CORE -DSP_MULTI_BYTE SPGroveNew.cc mkdir ./blib/arch mkdir ./blib/arch/auto mkdir ./blib/arch/auto/SGML mkdir ./blib/arch/auto/SGML/SPGrove Running Mkbootstrap for SGML::SPGrove () chmod 644 SPGrove.bs LD_RUN_PATH="/var/tmp/ken/cgi-src/ofx-0.06/SGML-SPGrove-1.00/../sp-1.3/lib" ld -o ./blib/arch/auto/SGML/SPGrove/SPGrove.so -Bshareable -L/usr/local/lib SPGrove.o SPGroveNew.o -L/var/tmp/ken/cgi-src/ofx-0.06/SGML-SPGrove-1.00/../sp-1.3/lib -lsp chmod 755 ./blib/arch/auto/SGML/SPGrove/SPGrove.so cp SPGrove.bs ./blib/arch/auto/SGML/SPGrove/SPGrove.bs chmod 644 ./blib/arch/auto/SGML/SPGrove/SPGrove.bs mkdir ./blib/lib/auto/SGML mkdir ./blib/lib/auto/SGML/SPGrove mkdir ./blib/man3 ------------------- I'm wondering if this a problem with best.com's FreeBSD system or if it is a problem with the way perl is trying to install the extension. Thanks for any help. -- Ken Neighbors III, Ph.D. mailto:ken@best.com Web Application Development http://www.best.com/~ken/ perl, CGI, Linux, Java (650) 390-9414 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?353BC0D7.F953168C>