James Cloos <cloos@xxxxxxxxxxx> writes: >>>>>> "ILT" == Ian Lance Taylor <iant@xxxxxxxxxx> writes: > > ILT> However, to answer your question, the OS/ABI field will be set to > ILT> GNU/Linux if your program has any symbols whose type is STT_GNU_IFUNC. > > ILT> This of course suggests that your problem is that you are building on a > ILT> system with a newer version of glibc than the system on which you want > ILT> to run the program. This doesn't work in general; glibc is backward > ILT> compatible but not forward compatible. > > That fully explains both why it happens for this project and why the abi > on the box's own executables and libraries seemed to be a random mix of > the two abis. > > What is the best way to determine exactly which symbols in use are so > tagged? I tried objdump, readelf, dumpelf and scanelf, but didn't see > references to the ST_TYPE. readelf -s and look for IFUNC in the Type column. Ian