FC3, gcc, library and backward compatibility

Mark Hittinger bugs at pu.net
Sun Jan 9 03:23:10 UTC 2005


> /usr/local/vni/CTT3.0/lib/lib.linux/libimslcmath.so: 
>             undefined reference to `__ctype_b'
> and the same with other __ctypes_*.

The solution is to recompile everything but there is a workaround if you can't
do that.

This problem first cropped up in RedHat9.  Apparently there was a change in
the libc.

Try to find a copy of the libc from a RedHat8 system.  On my systems I created
a /usr/local/oldlib with a copy of the RedHat8 libc:

% ls -la /usr/local/oldlib
-rwxr-xr-x    1 root     root      1292588 Oct 21  2003 libc-2.3.2.so
% sum /usr/local/oldlib/libc-2.3.2.so
14708  1263

You can then do something like this:

% gcc -o program program.c -L/usr/local/oldlib -lc-2.3.2 -limslwhatever

Other undefined symbols that can possibly be cured with the same
technique are _isAlphNum, __ctype_tolower, and __ctype_toupper.

Good luck!

Mark Hittinger
bugs at pu.net




More information about the users mailing list