[Bug 191161] New: building www/p5-libapreq2 does not link libapreq2.so unless it is installed
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Jun 18 16:31:02 UTC 2014
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191161
Bug ID: 191161
Summary: building www/p5-libapreq2 does not link libapreq2.so
unless it is installed
Product: Ports Tree
Version: Latest
Hardware: Any
OS: Any
Status: Needs Triage
Severity: Affects Many People
Priority: Normal
Component: Individual Port(s)
Assignee: freebsd-ports-bugs at FreeBSD.org
Reporter: vivek at khera.org
If you build www/p5-libapreq2 on an empty system, the resulting perl modules
are not linked against libapreq2.so. The second time you build this port, ie,
when libapreq2.so is in /usr/local/bin, it properly builds the perl module.
This is a problem when building packages using poudriere for example, as the
resulting package for p5-libapreq2 does produce a perl library that works.
Specifically:
... build on new system ...
# ldd $WRKSRC/glue/perl/blib/arch/auto/APR/Request/Request.so
glue/perl/blib/arch/auto/APR/Request/Request.so:
libthr.so.3 => /lib/libthr.so.3 (0x80120c000)
libc.so.7 => /lib/libc.so.7 (0x80081a000)
# perl -MAPR::Request::Apache2 -e 'print $APR::Request::Apache2::VERSION,"\n"'
Can't load
'/usr/local/lib/perl5/site_perl/5.16/mach/auto/APR/Request/Request.so' for
module APR::Request:
/usr/local/lib/perl5/site_perl/5.16/mach/auto/APR/Request/Request.so: Undefined
symbol "apreq_hook_disable_uploads" at
/usr/local/lib/perl5/5.16/mach/DynaLoader.pm line 190.
at /usr/local/lib/perl5/site_perl/5.16/mach/APR/Request/Apache2.pm line 26.
Compilation failed in require at
/usr/local/lib/perl5/site_perl/5.16/mach/APR/Request/Apache2.pm line 26.
BEGIN failed--compilation aborted at
/usr/local/lib/perl5/site_perl/5.16/mach/APR/Request/Apache2.pm line 26.
Compilation failed in require.
BEGIN failed--compilation aborted.
... build on system with a copy of libapreq2 (aka this port) already installed
...
# ldd $WRKSRC/glue/perl/blib/arch/auto/APR/Request/Request.so
glue/perl/blib/arch/auto/APR/Request/Request.so:
libapreq2.so.11 => /usr/local/lib/libapreq2.so.11 (0x80120c000)
libaprutil-1.so.0 => /usr/local/lib/libaprutil-1.so.0 (0x80141a000)
libapr-1.so.0 => /usr/local/lib/libapr-1.so.0 (0x80163f000)
libcrypt.so.5 => /lib/libcrypt.so.5 (0x801870000)
libexpat.so.6 => /usr/local/lib/libexpat.so.6 (0x801a8f000)
libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x801cb3000)
libthr.so.3 => /lib/libthr.so.3 (0x801faf000)
libc.so.7 => /lib/libc.so.7 (0x80081a000)
# perl -MAPR::Request::Apache2 -e 'print $APR::Request::Apache2::VERSION,"\n"'
2.13
How-To-Repeat:
cd /usr/ports/www/p5-libapreq2
make deinstall
make clean
make install
perl -MAPR::Request::Apache2 -e 1
... will give above error ...
ldd /usr/local/lib/perl5/site_perl/5.16/mach/auto/APR/Request/Request.so
... will show no extra libs linked ...
make clean
make
make reinstall
perl -MAPR::Request::Apache2 -e 1
... will work ...
ldd /usr/local/lib/perl5/site_perl/5.16/mach/auto/APR/Request/Request.so
... will show all the extra libs linked ...
Fix:
I think it needs to specify LD_RUN_PATH when linking.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-ports-bugs
mailing list