我有一个与我在这里能够解决的问题类似的问题,在 docker 容器中构建 Python3.9.2 时,构建成功完成但缺少 ctypes
ModuleNotFoundError: No module named '_ctypes'
尝试上述帖子中的相同方法没有成功,我什至尝试安装最新的 libffi-3.3,结果相同,所有 libffi 头文件和库都已到位。
似乎只_ctypes_test
构建了共享对象。
root@74f1b419ddd8:/# find / -name _ctypes*
/usr/local/lib/python3.9/lib-dynload/_ctypes_test.cpython-39-x86_64-linux-gnu.so
我找到了一些关于此的门票,但对我没有任何帮助:
- https://bugs.python.org/issue34823
- https://bugs.python.org/issue14527
- https://bugs.python.org/issue30090
知道如何使它适用于最新的 Python 3.9 吗?
更新: 在 Python 3.7.10 和 3.8.8 上测试,它似乎工作正常,所以它可能在 3.9 上发生了变化。*
更新 2:
我_ctypes.cpython-39-x86_64-linux-gnu.so
从预建的 docker 中获取文件pyhton:3.9.2-slim
并将其放入我的容器中/usr/local/lib/python3.9/lib-dynload/_ctypes_test.cpython-39-x86_64-linux-gnu.so
并且它可以工作,import ctypes
没有引发此错误(我必须使用libffi-3.2.1
而不是构建 python 3.3
)。为什么我无法make
构建_ctypes
?