[lug] (no subject)

D. Stimits stimits at comcast.net
Wed May 18 12:43:20 MDT 2005


>> But more likely, two libraries are being mixed which were compiled 
>> against the wrong versions. Simply put, some libraries reference other 
>> libraries, and perhaps one was linked against the wrong version...the 
>> end program is not the only code that can link against libraries. If 
>> this is the case, then compiling from source (provided you can find 
>> out what wants that symbol) would fix it.
> 
> 
> 
> I think this is more likely.  I'm going to reinstall gcc and glibc and 
> the dynamic linker on a test box and see if that fixes the problem.

Keep in mind that it isn't necessarily glibc/gcc which is linking wrong. 
Since it is looking for "private" function symbols, chances are it 
is...but someone could have done a "no no" in another library and hooked 
into private functions of glibc (they are private because they might 
change or go away without notice) from other libs. If the latter is the 
case, then rebuilding glibc won't help, the other libs will still be 
looking for the function signature that doesn't exist there (and perhaps 
doesn't even exist at all anymore). If you know all libraries involved, 
you can sometimes use nm to track down what outside library is 
referencing it (combine with grep)...unfortunately some libraries strip 
too much information to do this.

D. Stimits, stimits AT comcast DOT net



More information about the LUG mailing list