** Description changed: - Context : I haven't this problem in Lucid Lync (10.04), on i686 and x64, - this appear in Precise (12.04) in i686 and x64 + Impact: the extension providing the fuse bindings is not linked against + libfuse making it unusable + + Fix: this is caused by an incorrect linking order and ld --as-needed, + fix is simply reordering the commandline correctly + + TEST CASE: + ldd /usr/lib/perl5/auto/Fuse/Fuse.so + + should show links against libfuse + + ldd -r ldd /usr/lib/perl5/auto/Fuse/Fuse.so should only show undefined + symbols provided by perl (Perl_, PL_, perl_) and not libfuse. + + Regression potential: + low, only command line reordering, current package unusable + + + original report: + Context : I haven't this problem in Lucid Lync (10.04), on i686 and x64, this appear in Precise (12.04) in i686 and x64 in 10.04 : root@cortex:~# ldd /usr/lib/perl5/auto/Fuse/Fuse.so - linux-gate.so.1 => (0x001f5000) - libfuse.so.2 => /lib/libfuse.so.2 (0x00ca8000) - libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0097b000) - libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00364000) - librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x00110000) - libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00952000) - /lib/ld-linux.so.2 (0x00285000) + linux-gate.so.1 => (0x001f5000) + libfuse.so.2 => /lib/libfuse.so.2 (0x00ca8000) + libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0097b000) + libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00364000) + librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x00110000) + libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00952000) + /lib/ld-linux.so.2 (0x00285000) in 12.04: root@PreciseSrv64b:~# ldd /usr/lib/perl5/auto/Fuse/Fuse.so - linux-vdso.so.1 => (0x00007fff09fff000) - libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f8fb632b000) - libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8fb5f6e000) - /lib64/ld-linux-x86-64.so.2 (0x00007f8fb675a000) + linux-vdso.so.1 => (0x00007fff09fff000) + libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f8fb632b000) + libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8fb5f6e000) + /lib64/ld-linux-x86-64.so.2 (0x00007f8fb675a000) To correct this In the source package, I've modified the Makefile.PL line 47 from - 'OBJECT' => "$obj Fuse.o -lpthread", # link all the C files too + 'OBJECT' => "$obj Fuse.o -lpthread", # link all the C files too to - 'OBJECT' => "Fuse.o $obj -lpthread", # link all the C files too + 'OBJECT' => "Fuse.o $obj -lpthread", # link all the C files too And now (after reinstall my own package) its fine : my fuse/perl application is working and ldd give my back what I hope : root@PreciseSrv64b:/home/adlp# ldd /usr/lib/perl5/auto/Fuse/Fuse.so - linux-vdso.so.1 => (0x00007fff2afd3000) - libfuse.so.2 => /lib/libfuse.so.2 (0x00007fef8645b000) - libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fef8623e000) - libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fef85e80000) - librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fef85c78000) - libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fef85a74000) - /lib64/ld-linux-x86-64.so.2 (0x00007fef868a2000) + linux-vdso.so.1 => (0x00007fff2afd3000) + libfuse.so.2 => /lib/libfuse.so.2 (0x00007fef8645b000) + libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fef8623e000) + libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fef85e80000) + librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fef85c78000) + libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fef85a74000) + /lib64/ld-linux-x86-64.so.2 (0x00007fef868a2000)
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1019868 Title: Because of a linking error, libfuse-perl is useless... To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/libfuse-perl/+bug/1019868/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
