错误的ELF类:Solaris上的ELFCLASS32

时间:2012-12-27 08:57:04

标签: c++ solaris 32bit-64bit

我有一个问题。我在64位Solaris上使用GCC构建了一个可执行文件,在运行时我正在尝试加载64位libz.so库。 但我经常遇到以下错误:

Failed to load the library ld.so.1: ifsvc: fatal: /usr/sfw/lib/libgcc_s.so.1: wrong ELF class: ELFCLASS32

在网络上,我最常用的解决方案是在开始执行之前运行添加此命令:

export LD_LIBRARY_PATH=/usr/sfw/lib/64:$LD_LIBRARY_PATH

但它对我没有用,我仍然得到这个错误。 当我尝试ldd命令时,我没有收到任何错误。

-bash-3.2$ ldd libz.so
warning: ldd: libz.so: is not executable
        libc.so.1 =>     /usr/lib/64//libc.so.1
        libgcc_s.so.1 =>         /usr/sfw/lib/64/libgcc_s.so.1
        libm.so.2 =>     /usr/lib/64//libm.so.2
        /platform/SUNW,Sun-Fire-T200/lib/sparcv9/libc_psr.so.1
-bash-3.2$

还有其他解决方法可以解决这个问题吗? 它可以取决于二进制是如何构建的吗?

0 个答案:

没有答案