Fontcustomを使用して、svgファイルとfontforgeを使用してアイコンフォントを作成しようとしています。 OSX.7を使用しています。ただし、プログラムを実行するたびにエラーが発生します
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`
Python/Unixの初心者として、どこでこれを解決しようとするのかさえ知りません。誰でもアドバイスを提供できますか? <prefix>
および<exec_prefix>
とは何を指しますか?
python --version
と入力すると、Python 2.7.1
が返されます。また、ディレクトリ/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7にはモジュールの大きなリストがあり、site.pyは間違いなくそのフォルダにあります。コンピュータにモジュールを見つけさせるにはどうすればよいですか?
仮想環境を作成し、そのpythonインストールを削除した場合、同じエラーが発生します。 venvフォルダーをrm -r
してから、有効なpython場所で再作成し、pip install -r requirements.txt
を実行すると、すべての設定が完了します(requirements.txtが正しいと仮定)。
export PYTHONHOME=/usr/local
を試してください。 PythonはOS Xの/usr/local
にインストールする必要があります。
この答えは、私が予想していたよりも少し注目されました。もう少しコンテキストを追加します。
通常、Pythonは、パスprefix/lib
およびexec_prefix/lib
でライブラリを探します。ここでprefix
およびexec_prefix
は構成オプションです。PYTHONHOME
環境変数が設定されている場合、prefix
およびexec_prefix
の値が継承されます。PYTHONHOME
環境変数が設定されていない場合、prefix
およびexec_prefix
はデフォルトで/usr/local
になります(また、prefix
/exec_prefix
を設定する他の方法があると思いますが、私はそれらに完全には精通していません)。
通常、エラーメッセージCould not find platform independent libraries <prefix>
を受け取った場合、文字列<prefix>
はprefix
の実際の値に置き換えられます。ただし、prefix
の値が空の場合、質問に投稿されたやや不可解なメッセージが表示されます。空のprefix
を取得する1つの方法は、PYTHONHOME
を空の文字列に設定することです。 PYTHONHOME
、prefix
、およびexec_prefix
の詳細については、 公式ドキュメント を参照してください。
pYTHONHOMEを/ usrなどのpythonのbinファイルの親フォルダーに変更します。これは/ usr/binの親フォルダーです。
私はこの問題を抱えていて、それを修正しようとして数時間を費やしました。パスを変更することでプレフィックスエラーを修正しましたが、まだエンコーディングインポートエラーが発生しました。これは、コンピューターを再起動することで修正されました。
(私がこれを書いたのは、この問題を抱える次の人が私がやったように数時間を費やす必要がないようにするためです。)
私のpycharm ceには同じエラーがあり、簡単に修正できました。誰かがそのエラーを持っている場合は、フォルダをアンインストールして削除し、ctrl+h
ドキュメント内にフォルダが見つからない場合は、ソフトウェアを再度インストールしてください。再び動作するはずです。
Pycharmフォルダーを消去する前に、scratchesフォルダーを必ず保存してください。