Demon/Library or Demon/TCL mismatch!
3 years ago
Originally Published: 2006-11-23
Article Number
000061682
Applies To
RSA Authentication Manager 6.1
Red Hat Linux 3.0
Issue

Demon/Library or Demon/TCL mismatch!


Cause
Linux libraries are built using: gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)
Resolution

In the admexamp.mak file you can find that: Linux libraries are built using: gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)

Due to various changes in the libraries, particularly the redesigned ctype architecture, applications compiled on AS 3.0 and linked with libraries compiled on RH 7.3 would have issues such as the following error.

----------------------------------------------------------------------
root@eelvers13 toolkit]# make -f acedb.mak
/usr/bin/gcc -g -c acedb.c
/usr/bin/gcc -o acedb \
acedb.o \
ace_api.a \
-L./ -Wl,-Bdynamic -lprompt_api
ace_api.a(lib.o)(.text+0x1b5): In function `TruncParam':
: undefined reference to `__ctype_b'
ace_api.a(lib.o)(.text+0x212): In function `TruncParam':
: undefined reference to `__ctype_b'
collect2: ld returned 1 exit status
make: *** [acedb] Error 1
----------------------------------------------------------------------

Adding the definitions shown above resolved the linking issue but set up the memory corruption.

The solution is to remove the following two lines

unsigned short int ct = 0;
unsigned short int *__ctype_b = &ct;

and to link with the i386-redhat-linux7 compatibility library /usr/lib/i386-redhat-linux7/lib/libc.a after linking in everything else.

If these are not present please download and install compat-glibc-7.x-2.2.4.32.6.i386.rpm

Now the program runs without any problem:
----------------------------------------------------------------------
[root@eelvers13 toolkit]# make -f acedb.mak
/usr/bin/gcc -o acedb  \
acedb.o  \
ace_api.a \
-L./ -Wl,-Bdynamic -lprompt_api /usr/lib/i386-redhat-linux7/lib/libc.a
[root@eelvers13 toolkit]# ./acedb
Sd_ApiRev::<retcode = 0>
Sd_ApiRev::retbuf <Release: 6.1, Date: Sep 22 2005 10:34:41>
----------------------------------------------------------------------