OpenCSW Bug Tracker


Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0003766 [pm_tt2] packaging minor have not tried 2009-07-13 15:18 2010-03-31 22:19
Reporter dam View Status public  
Assigned To bonivart
Priority normal Resolution fixed  
Status closed  
Summary 0003766: XS modules should be compiled with -lperl
Description The XS modules provided by Perl should be compiled against libperl. Otherwise symbols from Perl itself can't be found when dlopening libperl and the xs-modules. This is described in detail at
  <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=327585#85> [^]
Additional Information
Tags No tags attached.
Attached Files

- Relationships

-  Notes
(0006510)
bonivart (developer)
2009-08-05 17:03

How can I test for this in a simple way?
(0006512)
dam (administrator)
2009-08-05 17:25

I'll give my special Perl backend build triggering the error a try. It may be visible by inspecting the linking directly, will look into that also.
(0006520)
dam (administrator)
2009-08-06 13:32

I inspected this closely and it has the same problem as before. The issue is that the modules must be linked to libperl.so, similar to the perl binary itself. The perl binary looks like this:

sol10u4-fusion# dump -Lv /opt/csw/bin/perl

/opt/csw/bin/perl:

  **** DYNAMIC SECTION INFORMATION ****
.dynamic:
[INDEX] Tag Value
[1] NEEDED libperl.so.5.8.8
[2] NEEDED libsocket.so.1
[3] NEEDED libnsl.so.1
[4] NEEDED libdb-4.7.so
[5] NEEDED libdl.so.1
[6] NEEDED libm.so.1
[7] NEEDED libpthread.so.1
[8] NEEDED libc.so.1
[9] NEEDED libperl.so <-- Links to libperl.so
[10] INIT 0x8051de8
[11] FINI 0x8051e04
[12] RUNPATH /opt/csw/lib/$ISALIST:/opt/csw/lib:/opt/csw/lib/perl/5.8.8/CORE
[13] RPATH /opt/csw/lib/$ISALIST:/opt/csw/lib:/opt/csw/lib/perl/5.8.8/CORE
[14] HASH 0x8050118
[15] STRTAB 0x8050838
...


This is how the Perl module I use looks like right now:


sol10u4-fusion# dump -Lv /opt/csw/lib/perl/5.8.8/auto/POSIX/POSIX.so

/opt/csw/lib/perl/5.8.8/auto/POSIX/POSIX.so:

  **** DYNAMIC SECTION INFORMATION ****
.dynamic:
[INDEX] Tag Value
[1] NEEDED libm.so.1 <-- Does not link to libperl.so inducing missing symbols due to RTLD
[2] INIT 0x15ec4
[3] FINI 0x15ee0
[4] RUNPATH /opt/csw/lib/$ISALIST:/opt/csw/lib
[5] RPATH /opt/csw/lib/$ISALIST:/opt/csw/lib
[6] HASH 0xc4


Somehow the -lperl is still missing when compiling the modules. Maybe this must be added to LDFLAGS?
(0006547)
bonivart (developer)
2009-08-10 16:35

I'm getting other bug reports about Perl being broken since this debacle with BDB. How important is this fix? Could I release the packages in testing that are compiled with BDB47? They fix this bug: http://www.opencsw.org/mantis/view.php?id=3804. [^] Also, I want to release another SpamAssassin package using cswclassutils but it can't be compiled against current Perl probably due to the same reason as bug 0003804.
(0006548)
bonivart (developer)
2009-08-10 16:37

I mean, how important is it to quickly fix this bug? It's been like this for a long time and you're the only one who have noticed. Maybe we should in the interim release a new Perl to fix other broken packages depending on it? Then we can resume this bug.
(0006550)
dam (administrator)
2009-08-10 17:59

The fix is not that important. Please release the rebuild as you see fit.
(0007787)
bonivart (developer)
2010-03-31 22:15

Hmm, just wondering about the status of this bug now when we have 5.10.1..?
(0007788)
dam (administrator)
2010-03-31 22:18

With the change in the cpan-category to link with -lperl and the 'ldd -r' check in checkpkg this should be fixed now :-)


Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker