Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 305279 - Patch in sci-physics/root-5.26.00 breaks link testing in configure
Summary: Patch in sci-physics/root-5.26.00 breaks link testing in configure
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Science Physics related packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-02-15 15:46 UTC by Hypnos
Modified: 2010-02-19 06:34 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Hypnos 2010-02-15 15:46:07 UTC
1. The ebuild applies the patch "root-5.26.00-configure-paths.patch"

2. This patch add the linker flag "-shared" inside the routine "check_symbol" in the "configure" script.  "check_symbol" tests whether a symbol is in a library, and falls back to testing for a symbol by linking a dummy program if the library to check is stripped.

3. Since the Makefile "config/Makefile.linuxx8664gcc" already puts "-fPIC" in the CXXFLAGS, the link *always succeeds*.

4. On my system, I wish to include the Pythia6 functionality within root.  The configure script checks for the symbol "pythia6_common_address" first with two trailing underscores, then one, and none.  Because I use split debug on my system, libpythia6.so is stripped and so "check_symbol" falls back to a link test.  Because of the possible bug described above, the link test fails with "pythia6_common_address__" even though the correct symbol is "pythia6_common_address".

5. The root build and install continues, but I encounter an error when I try to instantiate a "TPythia6":

***
root [1] foo=new TPythia6()
/usr/bin/root.exe: symbol lookup error: /usr/lib64/root/libEGPythia6.so: undefined symbol: pythia6_common_address__
***

Proposed solution:  do not add "-shared" to the compilation command line in "check_symbol".  The patch in question appears to fix some path issues for ODBC linking, and I cannot figure out why "-shared" was added to the compiler flags.
Comment 1 Sébastien Fabbro (RETIRED) gentoo-dev 2010-02-18 21:25:12 UTC
Hi,

I'll take a look at it. Meanwhile, could you post your emerge --info and your build log (probably compressed since it's big).

Thanks
Comment 2 Sébastien Fabbro (RETIRED) gentoo-dev 2010-02-19 06:34:12 UTC
So it should be fixed now in root-5.26.00-r1. The -shared was introduced to link properly with afs on amd64 which fails without. I realized the failure was openafs not respecting as-needed to link with lresolv.

Thanks for tracking that down!