LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Problem with Insight II - version GLIBC_2.2 not defined in file libc.so.6... (https://www.linuxquestions.org/questions/linux-software-2/problem-with-insight-ii-version-glibc_2-2-not-defined-in-file-libc-so-6-a-218092/)

belga 08-15-2004 10:01 PM

Problem with Insight II - version GLIBC_2.2 not defined in file libc.so.6...
 
Hi, I'm having a problem installing a molecular modelling program (Insight II from Accelrys) and I thought someone here could come up with a solution.

The program (version 2000.3L) is said to run in RHEL WS 2.1; we had a problem with that particular version with our system (drivers), so we decided to try different Red Hat-based distros: RHEL WS 3, Fedora Core 1 & 2. All reported the same error:

Code:

$ fdiscover
fdiscover: relocation error: /usr/local/accelrys/I2000.3L/Linux_2_Intel_32/
biosymso/libpgthread.so: symbol __libc_sigaction, version GLIBC_2.2
not defined in file libc.so.6 with link time reference

As I read somewhere before, I'm setting the environment variable
Code:

setenv LD_ASSUME_KERNEL 2.4.1
on the .cshrc file (there is a configuration script coming with the program prepared to run in a tcsh shell, so we use tcsh when starting the program), but the error is still produced...

The program is provided as binary files, I have no source code for it and the software producers told me that they cannot support it still because it's still kind of a beta...

Please tell me what other info I can provide!

System: IBM Thinkcentre P4-2.4GHz, 512MB RAM, on-board video Intel 845G.

rjlee 08-16-2004 09:52 AM

The problem here is that your C libraries do not contain the __libc_sigaction method for version 2.2 of Glibc.

The most likely cause for this is that you don't have version 2.2 of glibc installed; many distributions contiain a package called glibc-compat that you can install to handle issues like these.

Another test you can do is to run
Code:

ldd /path/to/executablefile
in a terminal, replacing /path/to/executablefile with the actual filename and directory. This will list all of the unmet library dependencies for that file.

Hope that's of some help,

— Robert J. Lee

belga 08-16-2004 04:35 PM

Thanks for the reply!

OK, I installed the file compat-glibc-6.2-2.1.3.2.src.rpm that I found off the web (although it was listed as a file for Red Hat 7.3 and 7.2, but it was the best I could find...), when I try to run fdiscover I still have the same error:

Code:

$ fdiscover
fdiscover: relocation error: /usr/local/accelrys/I2000.3L/Linux_2_Intel_32/
biosymso/libpgthread.so: symbol __libc_sigaction, version GLIBC_2.2 not defined in
file libc.so.6 with link time reference

However, when I run ldd:

Code:

$ ldd /usr/local/accelrys/I2000.3L/Linux_2_Intel_32/biosym_exe/fdiscover
        libpub_lic.so => /usr/local/accelrys/License_Pack/Linux_2_Intel_32/libs/libpub_lic.so (0x40001000)
        libm.so.6 => /lib/i686/libm.so.6 (0x40161000)
        libpgthread.so => /usr/local/accelrys/I2000.3L/Linux_2_Intel_32/biosymso/libpgthread.so (0x40183000)
        libc.so.6 => /lib/i686/libc.so.6 (0x40199000)
        libpgc.so => /usr/local/accelrys/I2000.3L/Linux_2_Intel_32/biosymso/libpgc.so (0x402d4000)
        libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0x402e9000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00b29000)
        libgcc_s.so.1 => /usr/local/accelrys/I2000.3L/Linux_2_Intel_32/biosymso/libgcc_s.so.1 (0x4032c000)

This is certainly different from before installing the compat-glibc library, before I got a bunch of errors of "symbol xxx, version GLIBC_2.x not defined in file yyy with link time reference". So I think we're on the right track...

By the way, the glibc version installed is 2.3.2-101...

Thanks for the help again!

rjlee 08-18-2004 01:01 PM

Forgot to say: You need to run
Code:

ldconfig
as root after installing new library files before they will be found. Generally RPMs will do this for you, though.

You seem to have installed glibc libraries version 2.1 and 2.3, but what you actually need is version 2.2.

I suggest you try and find a glibc-compat or compat-glibc with a version ending in -2.2.something, and install that as well (rpm --install not rpm --upgrade). You might want to try here: http://www.rpmfind.net/linux/rpm2htm...&system=&arch=

Being for a different distribution shouldn't be too much of a problem here, as glibc doesn't have many dependencies. Best to get the processor family right though (e.g. PPC code won't run an atari!)

By the way, glibc and glibc-compat are actually the same thing. The only difference is that the compat library doesn't include the symbolic links to libc.so without the version number, so the regular libraries get used by default unless you need them.


All times are GMT -5. The time now is 11:52 PM.