[英]Error running python script in terminal: OSError: [Errno 2] No such file or directory
我正在嘗試使用一個名為“bundler_sfm”的軟件,它是使用 python 腳本執行的。
我正在嘗試使用的軟件可在此處獲得,如果您想查看該腳本,則該腳本位於 utils 目錄中。
嘗試運行它時,我收到以下 python 錯誤:
File "/usr/lib/python2.7/subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
導致這個錯誤的代碼如下:
# Extract SIFT data
if verbose:
with open(pgm_filename, 'rb') as fp_in:
with open(key_filename, 'wb') as fp_out:
subprocess.call(BIN_SIFT, stdin=fp_in, stdout=fp_out)
我已經查看了具有類似錯誤的各種其他答案,但仍然不知道如何解決這個問題。
我正在嘗試在基本操作系統的終端中運行它。
任何幫助將不勝感激。
已經在評論中解決了,但只是為了回答:
通過在調用 subprocess.call() 方法之前打印出 BIN_SIFT 來計算出實用程序認為 sift 二進制文件所在的位置。
意識到這條路不正確
作為一種駭人聽聞的解決方法,將 bundler.py 第 55 行的正確路徑硬編碼為列表中的字符串:
BIN_SIFT = ["/real/path/to/sift"]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.