2013-09-06 4 views
0

방금 ​​이걸 보니 한 시간을 보냈습니다. 답을 찾을 수없는 것 같습니다. 저는 여러 대의 Windows 워크 스테이션과 리눅스 서버를 운영하고 있습니다. 파이썬 모듈 컴퓨터를 최소한으로 유지하려면 내 컴퓨터에 새 모듈을 설치 한 다음 설치 로그를보고 파일을 서버의 위치에 복사합니다. 모든 시스템은 서버 위치를보고 환경과 경로가 설정되었으며 몇 달 동안 잘 작동합니다.python lxml 모듈을 원격 디렉토리로 옮깁니다.

방금 ​​lxml을 설치하고 site-packages/lxml 디렉토리를 서버에 복사했습니다.

로컬 설치가 작동하지만 서버 설치는 작동하지 않습니다.

# 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 디렉토리를 grepped LXML 가져 오기 etree에서

와 나는 복사하지 않은 것도 함께 올라오고 있지 않다 : 내가 얻을. 버전 = 파이썬 2.6.6 lxml-3.2.3.win-amd64-py2.6 누구든지 어떤 생각을 가지고 있습니까? 어떻게 다른 모듈에서이 문제를 보지 못했습니까?

감사합니다.

+0

리눅스 컴퓨터에서 Windows 파이썬 라이브러리를 사용하려고합니까? – user581592

+0

아니요, 액세스하십시오. 모든 워크 스테이션은 Windows 7이며 Linux는 서버용으로 사용되며 Linux 시스템을 사용하지 않습니다. – rick

답변

0

lxml은 c 확장자를 사용하기 때문에 (컴파일 된 후 unix/linux의 Windows 또는 .so 파일에있는 dll 파일이므로) Windows에서 빌드 된 파일을 서버로 간단하게 복사 할 수 없습니다.

그리고 당신은 서버에서 lxml이 루트 디렉토리 아래 lxml, 그리고 실행 python setup install 에 LXML의 소스 코드를 다운로드 할 수 있습니다.

로컬을 빌드 한 다음 빌드 된 파일을 서버에 업로드하려면 로컬의 lxml 루트 디렉토리에서 python setup.py build 을 실행 한 다음 ./build/*/lxml을 서버로 복사하십시오. 플랫폼과 관련되어 있기 때문에 작동하지 않을 수 있습니다!

+0

누구든지 DLL 파일의 위치를 ​​알고 있습니까? – rick

+0

Windows에서 DLL 파일이있는 동안 Linux에서 .so 또는 .a 파일이있는 경우 c 확장자 (.so 파일은 컴파일 된 라이브러리 파일이며 "Shared Object"의 약자이며 Windows DLL과 유사합니다.) 그래서 컴파일해야합니다. lxml은 리눅스에 있지만 윈도우에서는 DLL 파일을 리눅스 서버에 복사하지 않는다. – atupal