2013-10-11 2 views
1

저는 Ubuntu12.04를 사용하고 있으며 아래 오류가보고 있습니다. 어떻게 든 파이썬은 adb 명령을 호출하려고했지만 실패했습니다. . Python subprocess.CalledProcessError : 'adb devices'명령이 0이 아닌 종료 상태를 반환했습니다 127

/bin/sh: 1: adb: not found 
Traceback (most recent call last): 
`File "./test.py", line 1395, in <module> 
    main() 
    File "./test.py", line 1218, in main 
    Device.wait_for_device(TIMEOUT, None, a.getport()) 
    File "./test.py", line 433, in wait_for_device 
    if (len(a) == 1 and get_attached_devices()): 
    File "./test.py", line 126, in get_attached_devices 
    lines = subprocess.check_output(adb_rel_path + 'adb devices', shell =True).split('\n') 
    File "/usr/lib/python2.7/subprocess.py", line 544, in check_output 
    raise CalledProcessError(retcode, cmd, output=output) 
    subprocess.CalledProcessError: Command 'adb devices' returned non-zero exit status 127 

나는 pyadb 취임시키다하기 위해 instructinos을 따라 : https://pypi.python.org/pypi/pyadb/0.1.1

을하지만 여전히 작업을 넣은 사람은 아니다. 나는 단서가 없다. 패키지 나 프로그램이 누락 된 사람은 누구입니까?

+0

코드 조각을 게시해야합니다. 또한, 그것은 파이썬 스크립트가 (adb_rel_path에 의해 주어진 것처럼) 어디에 있다고 생각하는지, adb 프로그램/스크립트가 설치되지 않았기 때문에 파이썬에 패키지가 누락되어 있지 않은 것으로 보입니다. –

답변

4

종료 코드 127은 "명령을 찾을 수 없음"을 의미합니다. 표준 단말기에서 abd를 실행할 수 있습니까?

+0

예. adb와 fastboot 모두 내 $ PATH에 추가됩니다. 또한 내 ~/.bashrc -----> export PATH = $ PATH에 /opt/jdk1.6.0_45/bin : ~/android-sdk/platform-tools : ~/android-sdk/tools :를 추가했습니다. /usr/local/lib/python2.7/dist-packages/pyadb. adb 장치도 터미널에서 작동합니다. – jen

+0

그리고'subprocess.call ([ "adb", "devices"])'의 반환은 무엇입니까? – Synthetica

+0

문제는 OP의 PATH가 파이썬이 읽지 않는'~/.bashrc'에 설정되어 있다는 것입니다. – Kevin

관련 문제