2016-11-21 4 views
1

私はUbuntu 14.04 LTSでpython 2.7を使用しています。numpyダブルインストール(pip vs apt-get)

私はtensorflow、scipy、numpyがインストールされていますが、apt-getを使ってsklearnやopencvをインストールしようとすると、バージョン1.8の別のnumpyがインストールされていて、以前にインストールしたpipを1.12に上書きします。私は1.12が必要なので、それを更新しようとしましたが、動作しません。

これがなぜ起こっているのか誰にでも教えてもらえますか?apt-getはpipよりも優先度が高いからですか?

numpyを強制的に更新するにはどうすればいいですか、それともapt-getによってインストールされたパッケージを依存関係として削除しないで削除するだけですか(sklearnなど)?

+0

このようなことに対処するにはvirtualemnvについて知る価値があります – doctorlove

答えて

1

私はDebianで同様の問題に遭遇しました。これが私が解決した(回避策)方法です。

numpyのバージョン:

  • apt-getは:V1.8は、/usr/lib/python2.7/dist-packagesで、これは"パス1"
  • ピップなりましょう:V1.12は、/usr/local/lib/python2.7/dist-packagesで、これは「パス2であるとします「

環境変数PYTHONPATHパス1 BOTHとパス2を追加し、ピップバージョンをデフォルトにしたい場合は、パス1の前にパス2を作成します。

このように、シェルの設定では、この行を追加し、〜/ .bashrcのを言う(パス1/2実際のパスに置き換え):

export PYTHONPATH=path2:path1:${PYTHONPATH} 

は、シェルを再起動します。

このコマンドで動作するかどうかテストするには、$ python -c "import numpy; print numpy.__file__"をテストし、パスがpath2であることを確認します。


私はパス1、すなわちexport PYTHONPATH=path2:${PYTHONPATH}をスキップしようとしたが、これは動作しませんでした。

関連する問題