我在本地 archlinux 机器上安装了 p4 库,一切运行顺利。我现在试图在几个虚拟机上做同样的事情(同样的操作系统也是 64 位),但无法让它运行......
安装顺利并且没有抱怨,但是当我尝试导入它时,我得到:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "P4.py", line 312, in <module>
import P4API
ImportError: /usr/lib/python2.7/site-packages/P4API.so: undefined symbol: TLSv1_method
如果我用 nm -A /usr/lib/python2.7/site-packages/P4API.so 查看符号
我可以看到实际上所有与 SSL 相关的符号都是未定义的(虽然在工作符号上定义),但究竟为什么呢?我已经安装了 openssl 并且以完全相同的方式安装了 Python,我找不到任何其他应该有用的库。
任何想法?
编辑:显然唯一的区别是P4 P4API.so的错误安装在“ldd”输出中缺少librt(并且librt实际上在那里)。不确定它与 TLS 问题有何关系,并尝试重新安装 glibc 然后 p4python 但仍然没有运气..