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.
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
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!