0

我刚刚花了一个小时查找这个,我似乎无法找到答案。我正在运行许多 Windows 工作站和一些 linux 服务器。为了使 python 模块机器安装最少,我将新模块安装到我的机器上,然后查看安装日志并将文件复制到服务器上的某个位置。每台机器都能看到服务器位置,并且设置了环境和路径,这几个月来一直运行良好。

我刚刚安装了 lxml 并将 site-packages/lxml 目录复制到服务器。

本地安装有效,服务器安装无效。我得到:

从 lxml 导入 etree

# Error: DLL load failed: The specified module could not be found.
# Traceback (most recent call last):
#   File "<maya console>", line 1, in <module>
# ImportError: DLL load failed: The specified module could not be found. # 

我为所有“lxml”文件搜索了本地 python26 目录,但我没有想出任何我没有复制过来的东西。版本= python 2.6.6 lxml-3.2.3.win-amd64-py2.6 有人有什么想法吗?为什么我没有看到其他模块的这个问题?

感谢聪明人!

4

1 回答 1

0

由于 lxml 使用 c 扩展名(编译后它们是 windows 上的 dll 文件或 unix/linux 上的 .so 文件),您无法使其工作,只需将构建在 windows 上的文件简单地复制到服务器。

并且可以在 lxml 中下载 lxml 的源代码 python setup install 并在服务器的 lxml 根目录下运行 。

或者你可以在本地构建,然后将构建的文件上传到服务器,只需 python setup.py build 在本地的 lxml 根目录下运行,然后将 ./build/*/lxml 复制到服务器!但它可能不起作用,因为它与平台相关!

于 2013-09-06T04:02:21.933 回答