「不明な」コマンドを入力するたびに、このPythonエラーメッセージが生成されます。一般的なコマンドはうまく動作します。これをデバッグする方法を知っていますか?
$ somenonexistingcommand
Traceback (most recent call last):
File "/usr/local/lib/python2.7/site.py", line 553, in <module>
main()
File "/usr/local/lib/python2.7/site.py", line 535, in main
known_paths = addusersitepackages(known_paths)
File "/usr/local/lib/python2.7/site.py", line 268, in addusersitepackages
user_site = getusersitepackages()
File "/usr/local/lib/python2.7/site.py", line 243, in getusersitepackages
user_base = getuserbase() # this will also set USER_BASE
File "/usr/local/lib/python2.7/site.py", line 233, in getuserbase
USER_BASE = get_config_var('userbase')
File "/usr/local/lib/python2.7/sysconfig.py", line 535, in get_config_var
return get_config_vars().get(name)
File "/usr/local/lib/python2.7/sysconfig.py", line 434, in get_config_vars
_init_posix(_CONFIG_VARS)
File "/usr/local/lib/python2.7/sysconfig.py", line 298, in _init_posix
raise IOError(msg)
IOError: invalid Python installation: unable to open /usr/include/python2.7/pyconfig.h (No such file or directory)
$ echo this works fine, however
this works fine, however
$
編集する- /usr/bin/pythonを修正した後、次のような他のPythonエラーメッセージが表示されます。
$ yetanothernonexistingcommand
Traceback (most recent call last):
File "/usr/lib/command-not-found", line 10, in <module>
import CommandNotFound
ImportError: No module named CommandNotFound
とにかく、間違ったコマンドを入力するたびにPythonが実行されます。
ベストアンサー1
まあ、それは状況がより明確になります。command-not-found
システムでコマンドが見つからないときに実行されるPythonプログラム。 (この機能は、印刷上のエラーなどがある場合は、代替と修正を提案することです。)を参照してください/usr/bin/command-not-found
。モジュールをインポートしようCommandNotFound
としましたが、できません。これは明らかにPythonのインストールが失敗したことを示しています。私はそれについてあまり慣れていませんが、command-not-found
Pythonのインストールを修復すると問題がなくなると思います。
command-not-found
もう少し詳しく説明すると、モジュールはデフォルトのPythonが見つからない場所にある可能性があります。デフォルトではパスの問題です。
デバッグ提案:
まず、出力は何ですか?
$型Python
このファイルはどのパッケージ/インストールの一部ですか?
インストール結果は次のコードに対応していますか?ここのパスはこのPythonのインポートパスです。
$ python Python 2.6.6 (r266:84292, 2010年12月27日, 00:02:40) [GCC 4.4.5] on linux2 詳細については、「help」、「copyright」、「credits」、または「license」 「と入力してください。
import sys sys.path ['', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/local/lib/python2.6/dist-packages', '/usr /lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages/PIL', '/usr/lib/python2.6/dist-packages/gst-0.10', '/ usr/lib/pymodules/python2.6', '/usr/lib/pymodules/python2.6/gtk-2.0', '/usr/lib/python2.6/dist-packages/wx-2.8-gtk2-unicode' ]