2013-01-10 4 views
2

os.system 또는 subprocess.call 등을 사용하여 파이썬을 통해 프로그램을 실행하고 싶지만이 프로그램은 32 비트 프로그램이며 파이썬은 64 비트이며이 프로그램을 찾을 수 없습니다 . 파이썬을 통해 프로그램을 실행하는 가장 쉬운 방법은 무엇입니까?파이썬을 사용하는 32 비트 프로그램 실행 64bit

좀 더 자세히 : 우분투를 사용하고 있습니다. 파이썬 2.7을 실행 중입니다. ia32-libs (프로그램이 명령 행에서 완벽하게 실행 됨), 유휴 상태에서 파이썬이 실행 중입니다.

감사합니다.

============= (나중에 그 일) ============= OK

은 그것을 얻었다. 문제는 IDLE로만 작업 할 때입니다 (dono 이유). 다른 guis (iron python, eclipse)를 사용하면 오류가 반환되지 않습니다.

감사합니다.

답변

1
subprocess.call("command param1 param2", shell=True) 

이 맞습니다. 32/64 비트 문제입니까?

+0

나는 확신한다. 제안이 작동하지 않고 오류 코드 127이 반환됩니다 (파일이 존재하지 않는 것 같이). 경로를 확인한 것으로 믿으십시오. – elikbelik

+0

Arne도 문제를 재현 할 수 없으므로 PATH 문제에 실제로 직면했습니다. ? 절대 경로를 사용해 보셨습니까? 'subprocess.call'이 별도의 프로세스에서 실행되는 전혀 새로운 쉘을 열어 어떤 방식 으로든 64 비트 파이썬에 연결되지 않았기 때문에 그것이 작동하지 않는다면 저에게 놀랐을 것입니다. 이 쉘에서 32 비트 프로그램이 실행 중입니다. –

0

Thorsten과 ​​동의해야합니다. 정상적으로 작동합니다. 데비안 안정기에서 64 비트 파이썬 2.6을 사용하고 x32를 사용하여 테스트했습니다 :

$ file $(which python2.6) 
/usr/bin/python2.6: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped 

$ file ~/bin/xsnow 
/home/myuser/bin/xsnow: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped 
[email protected]:~ 

$ python 
Python 2.6.6 (r266:84292, Dec 26 2010, 22:31:48) 
[GCC 4.4.5] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import subprocess 
>>> subprocess.call("~/bin/xsnow", shell=True) 
Xsnow-1.42, December 14th 2001 by Rick Jansen ([email protected]) 
WWW: http://www.euronet.nl/~rja/Xsnow/ 

실패한 예제 코드를 제공 할 수 있습니까?

관련 문제