Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#25391 - [root] incorrect dependent libraries for ROOT libraries
Attached to Project:
Community Packages
Opened by Sebastien Binet (bins) - Wednesday, 03 August 2011, 16:03 GMT
Last edited by Thomas Dziedzic (tomd123) - Thursday, 04 August 2011, 20:52 GMT
Opened by Sebastien Binet (bins) - Wednesday, 03 August 2011, 16:03 GMT
Last edited by Thomas Dziedzic (tomd123) - Thursday, 04 August 2011, 20:52 GMT
|
DetailsDescription:
it seems the dependent libraries for all (?) ROOT libraries are missing. e.g: me@archlinux$ ldd /usr/lib/root/libCore.so.5.30 linux-vdso.so.1 => (0x00007fff6398d000) libz.so.1 => /usr/lib/libz.so.1 (0x00007f0e401a4000) liblzma.so.5 => /usr/lib/liblzma.so.5 (0x00007f0e3ff82000) libpcre.so.0 => /lib/libpcre.so.0 (0x00007f0e3fd46000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007f0e3fb0f000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f0e3f805000) libm.so.6 => /lib/libm.so.6 (0x00007f0e3f582000) libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f0e3f36c000) libc.so.6 => /lib/libc.so.6 (0x00007f0e3f00b000) libpthread.so.0 => /lib/libpthread.so.0 (0x00007f0e3eded000) /lib/ld-linux-x86-64.so.2 (0x00007f0e40d71000) whereas, at CERN: me@lxplus: ldd /afs/cern.ch/atlas/offline/external/LCGCMT/LCGCMT_60c/InstallArea/x86_64-slc5-gcc43-opt/lib/libCore.so linux-vdso.so.1 => (0x00007fff053fc000) libz.so.1 => /afs/cern.ch/atlas/offline/external/LCGCMT/LCGCMT_60c/InstallArea/x86_64-slc5-gcc43-opt/lib/libz.so.1 (0x00002b9f73ad8000) libncurses.so.5 => /usr/lib64/libncurses.so.5 (0x00002b9f73cef000) libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00002b9f73f69000) libCint.so => /afs/cern.ch/atlas/offline/external/LCGCMT/LCGCMT_60c/InstallArea/x86_64-slc5-gcc43-opt/lib/libCint.so (0x00002b9f741a1000) libdl.so.2 => /lib64/libdl.so.2 (0x00002b9f74b36000) libstdc++.so.6 => /afs/cern.ch/sw/lcg/external/gcc/4.3.5/x86_64-slc5/lib64/libstdc++.so.6 (0x00002b9f74d3a000) libm.so.6 => /lib64/libm.so.6 (0x00002b9f75040000) libgcc_s.so.1 => /afs/cern.ch/sw/lcg/external/gcc/4.3.5/x86_64-slc5/lib64/libgcc_s.so.1 (0x00002b9f752c4000) libc.so.6 => /lib64/libc.so.6 (0x00002b9f754da000) /lib64/ld-linux-x86-64.so.2 (0x00002b9f72f25000) ie: the dependence against libCint.so is missing. the same "feature" shows up for a few of the other ROOT libraries I tested. this means one cannot dlopen e.g. libCore.so: me@archlinux$ python2 >>> import ctypes >>> ctypes.cdll.LoadLibrary("libCore.so") Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/ctypes/__init__.py", line 431, in LoadLibrary return self._dlltype(name) File "/usr/lib/python2.7/ctypes/__init__.py", line 353, in __init__ self._handle = _dlopen(self._name, mode) OSError: /usr/lib/root/libCore.so: undefined symbol: _ZTIN4Cint11G__TypeInfoE whereas it of course work fine at CERN: me@lxplus$ python2 >>> import ctypes >>> ctypes.cdll.LoadLibrary("libCore.so") <CDLL 'libCore.so', handle 335dcd0 at 2b446cb95c90> === I suppose this has to do with -Wl,--as-needed in the LDFLAGS but didn't find a way to test that. (I tried to export LDFLAGS with just -Wl,--hash-style=gnu to no avail) -s |
This task depends upon
Closed by Thomas Dziedzic (tomd123)
Thursday, 04 August 2011, 20:52 GMT
Reason for closing: Fixed
Additional comments about closing: pkgrel 4
Thursday, 04 August 2011, 20:52 GMT
Reason for closing: Fixed
Additional comments about closing: pkgrel 4
I tried recompiling with:
unset CFLAGS
unset CXXFLAGS
unset LDFLAGS
and it didn't fix this.
Do you know which flags were used to build the root that is working?
g++ -shared -Wl,-soname,libCore.so -m64 -g -o lib/libCore.so [..bunch of .o ..] -lz lib/liblzma.a lib/libpcre.a -lcrypt -Llib -lCint -ldl
which indeed looks better than what I have in my build-log:
g++ -shared -Wl,-soname,libCore.so -m64 -O2 -o lib/libCore.so [..bunch of .o ..] -lz -llzma -L/usr/lib -lpcre -lcrypt
here is the build-log of the CERN nightlies:
http://lcgapp.cern.ch/spi/aaLibrarian/nightlies/x86_64-slc5-gcc43-dbg/dev1.Thu_ROOT_5_30_00-patches-x86_64-slc5-gcc43-dbg-log.html
-s
looking at the configure options, one can see that very import switch:
--enable-explicitlink
which is self explaining :)
(that fixed it for me)
I am testing a clean rebuild right now and will update as soon as I get everything built and working.
thanks for the info, if you have any more suggestions, I am happy to listen
closing...