libcrypt.a 对 NSSLOW_ 的未定义引用

libcrypt.a 对 NSSLOW_ 的未定义引用

我们有 centos6 6.5 64 位服务器。它已设置为 32 位开发。我们的项目是静态链接的。团队成员安装了最新的 openssl、openssl-devel 和 openssl-static 64 位和 32 位 i686 库。我们的设置中没有其他任何修改。现在,在编译时,我们得到类似于

    /usr/lib/libcrypt.a(md5-crypt.o): In function `__md5_crypt_r':
    (.text+0x99): undefined reference to `NSSLOW_Init'
    /usr/lib/libcrypt.a(md5-crypt.o): In function `__md5_crypt_r':
    (.text+0xb4): undefined reference to `NSSLOWHASH_NewContext'

我们尝试恢复 openssl 包,但错误仍然存​​在,谢谢

答案1

显然 libcrypt.a 在过程中的某个地方被替换了。我们不得不使用

http://blog.gmane.org/gmane.linux.distributions.gobo.general/month=20100601

配置

配置 --prefix=glibc-2.12-1.47. el6_2.9.src/glibc-2.12-2-gc4ccff1/binary --host=i686-redhat-linux --build=i686-redhat-linux --enable-static --disable-nss-crypt CC='gcc -Wa,--32 -m32' CXX='g++ -Wa,--32 -m32' CFLAGS='-O2 -march=i686' CXXFLAGS='-O2 -march=i686' LDFLAGS=-m32

相关内容