Enthought Python Distribution(つまり、python 2.7)をUbuntu 12.04仮想マシンにインストールしました。シナプスパッケージマネージャーを介してインポートされたモジュールを認識できれば、非常に便利です。現在、これらはシステムが提供するpythonインストールによってのみ認識されます(当然のことながら)。両方のpythonは2.7なので、EPDインストールでシステムモジュールを認識させることはできますか?ありがとう。
3 に答える
いいえ、EPDでシナプスにインストールされたモジュールを使用することはサポートされていません。もちろん、特定のパッケージをPYTHONPATHに追加してみることができますが、これにより、特にわずかに異なるバージョンのPythonに対してリンクされている可能性のあるC拡張機能を含むモジュールの場合に競合が発生する可能性があります。
現在、EPDにPythonパッケージをインストールするための推奨される方法は、enpkg
ツールを使用することです。enpkg -s <packagename>
目的のパッケージがEnthoughtのリポジトリにあるかどうかを確認してください。まだ行っていない場合は、を実行してenpkg自体をアップグレードし、を実行enpkg enstaller
してEPDクレデンシャルを入力する必要がありますenpkg --userpass
。enpkg <packagename>
次に、 (enpkgを使用してEPDパッケージを更新する)を使用して、サポートされているパッケージをインストールできるようになります。
探しているパッケージがEnthoughtのリポジトリにない場合は、pipをenpkg pip
インストールし、そのツールを使用してEPDにパッケージをインストールできます。
python setup.py install
または、パッケージにsetup.pyが含まれている場合は、目的のパッケージのソースをダウンロードして、を使用してインストールすることもできます。
注:enpkgを使用せずにパッケージをEPDにインストールする場合は、EPDバージョンのパッケージが存在する場合は最初に削除する必要があります(enpkg --remove <packagename>
)。後でenpkgを使用してパッケージをインストールすることを選択した場合は、最初に、別の方法(pipなどの非EPDパッケージインストーラーを使用)でインストールしたバージョンを削除する必要があります。
Enthoughtの今後のGUIパッケージマネージャーもあり、現在ベータ版です。
同じ問題がありました。Enthoughtディストリビューションは、ミルシステムディストリビューションの実行とは完全に異なるPythonパスとライブラリプレフィックスを使用します。したがって、pipを使用する場合、pipはEPDパスではなく、システムパスにインストールされます。解決:
1)次のコマンドでEPDプレフィックスを取得します。enpkg --path
2)どこかに書き留めます
3)pip installの場合は、次のように入力します。
pip install --install-option="--prefix=$PREFIX_PATH" package_name
Ian Bickingが書いたように、pipを使用してPythonパッケージを別のディレクトリにインストールしますか?。
前の答えは時代遅れかもしれません。バージョン4.6.3では、enpkg--envを使用してプレフィックスを取得します
$ enpkg --version
enstaller version: 4.6.3
$ enpkg --env