将整个Python27目录复制到另一台PC会破坏'import jpeg_ls'

时间:2014-04-29 02:38:25

标签: python import module

我有两台装有Python 2.7.6的64位Windows 7机器。我将库CharPyLS(jpeg_ls)复制到两个Python27目录的site-packages中。一台机器工作正常,另一台机器抱怨它无法找到charPyLS DLL。

我尝试过的事情:
- 使用md5验证副本是否相同
- 检查系统路径是否相同 - 检查机器是否正在运行Python 2.7.6
- 将整个Python27目录复制到两台机器

Python27目录中的文件是否存在可能影响此内容的任何内容?

编辑:在复制到这两个模块之前,模块是在第三台机器上构建的。一个可以工作,因此它与Windows注册表无关。

Edit2:运行Dependency Walker解决了这个问题。构建CharPyLS的PC具有MinGW,因此模块是在假设libgcc_s_dw2-1.dll和libstdc ++ - 6.dll存在的情况下构建的。将这两个文件复制到Python27 / DLL可以解决问题。

1 个答案:

答案 0 :(得分:1)

添加:

extra_link_args = ['-static', '-static-libstdc++']

到CharPyLS setup.py(第21行)应该使用以下代码将这两个dll滚动到_CharLS.pyd中:

python setup.py build
python setup.py install