我正在使用 Ubuntu 12.04 - 服务器并持续获得:
/usr/lib/libcrypto.so.1.0.0: no version information available (required by /usr/lib/libpython2.7.so.1.0)
和
/usr/lib/libssl.so.1.0.0: no version information available (required by /usr/lib/libpython2.7.so.1.0)
没有任何模式说明原因的错误消息。它可以像运行 vi 一样简单。文件就在那里,但它们不是链接。
这在编译和安装 OpenLDAP 之后开始发生,使用他们网站上的说明,同时学习 ldap 服务器的基础知识。我当然删除了 openLDAP 以尝试解决问题。我还重新安装了 OpenSSL 和 libssl1.0.0 以尝试测试该解决方案。
非常感谢任何帮助,不幸的是谷歌没有用。
最佳答案
我想我应该开门见山了......
问题:libssl.so.1.0.0 和 libcrypto.so.1.0.0 没有可用的版本信息警告/错误。
我解决了!!!耶!!! (烟花应该熄灭之类的。)
经过大量研究、时间和努力(花了数周),这就是我最终完成的...
在您最终为您的 openssl 1.0.1h 版本提取源代码的目录中(应该也适用于其他版本。)我创建了一个名为 openssl.ld 的文件
在这个文件中放这个...
回答
OPENSSL_1.0.0 {
global:
*;
};
保存它。 现在输入...
清理干净(只是为了确保我们重新开始。)
现在是真正令人难以置信的部分......
./config --prefix=/usr/local --openssldir=/usr/local/openssl shared -Wl,--version-script=openssl.ld -Wl,-Bsymbolic-functions
然后...
make
make test
make install
ldconfig
那应该就可以了。 (非常简单。无需打补丁。)
我已将此解决方案应用于 32 位和 64 位版本的 Debian Wheezy。并进行了观察。 64 位版本自动默认为在/usr/local/lib 目录中创建的新 libssl.so.1.0.0 和 libcrypto.so.1.0.0 文件。 32 位版本没有。这就是为什么我一开始认为 Debian Wheezy 的 32 位版本没有遇到这个问题,但是一旦您获得 32 位版本以使用/usr/local/lib 目录中的新 openssl 库,它就会遇到这个问题。
使用 ldd 命令来测试二进制文件使用的库对于解决这个问题也是非常宝贵的。
祝你有美好的一天。
先生。 E.伙计
关于ubuntu - 没有可用的版本信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18390833/