1. ホーム
  2. パイソン

python エラー (プラットフォームに依存しないライブラリ <prefix> が見つかりませんでした)

2022-02-28 16:16:03

自前の切り詰めたファイルシステム上でpythonコマンドを実行すると、以下のようなエラーが表示されます。

# python
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site

エラーメッセージを見ると、いくつかのライブラリファイルがないか、必要なライブラリが見つからず、環境変数$PYTHONHOMEを設定する必要があるようです

python binがどのような動的ライブラリに依存しているかを見てみましょう。

ファイルシステムで、順番に python の依存する so ファイルを探したところ、これらの依存する動的ライブラリは、すべて存在し、つまりエラー報告の依存関係は、これらの sos とは関係ないことがわかりました。

元の作業用 fs にある python 関連のライブラリファイルとディレクトリを比較すると、usr/lib/python2.7/ ディレクトリに関連ファイルがあることがわかります。

これらのpython 2.7ディレクトリをファイルシステム上の対応するパスにコピーし、pythonを実行すると、正常に実行されます。

# python
Python 2.7.13 (default, Dec 19 2018, 19:00:00) 
[GCC 6.3.1 20170404] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>