次のrequirements.txt
ファイルを使用して、Ubuntu 12.04にいくつかのPythonパッケージをインストールしています。
numpy>=1.8.2,<2.0.0
matplotlib>=1.3.1,<2.0.0
scipy>=0.14.0,<1.0.0
astroML>=0.2,<1.0
scikit-learn>=0.14.1,<1.0.0
rpy2>=2.4.3,<3.0.0
そしてこれら二つのコマンド:
$ pip install --download=/tmp -r requirements.txt
$ pip install --user --no-index --find-links=/tmp -r requirements.txt
(最初のものはパッケージをダウンロードし、2番目のものはそれらをインストールします)。
プロセスは頻繁にエラーで停止します。
Could not find a version that satisfies the requirement <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2)) (from versions: )
No matching distribution found for <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2))
これを手動で修正します。
pip install --user <package>
その後、2番目のpip install
コマンドを再度実行してください。
しかし、それは that 特定のパッケージに対してのみ機能します。 2番目のpip install
コマンドをもう一度実行すると、プロセスは停止し、 another requiredパッケージについて文句を言われるので、もう一度繰り返す必要があります。 2番目のpip install
コマンドを実行します。
今のところ私はsix
、pytz
、nose
を手動でインストールしなければなりませんでした、そして今mock
が必要であることについて不平を言います。
pip
に all 必要な依存関係を自動的にインストールするように指示する方法はありますか?そのため、手動で1つずつインストールする必要はありませんか?
追加 :これはUbuntu 12.04 BTWでのみ起こります。 Ubuntu 14.04では、pip install
ファイルに適用されるrequirements.txt
コマンドは問題なく動作します。
この方法(ディレクトリにすべての依存関係があり、インデックスからダウンロードしない)は、ディレクトリにすべてのパッケージが含まれている場合にのみ機能します。したがって、ディレクトリにはすべての依存関係だけでなく、それらの依存関係が依存するすべてのパッケージも含まれる必要があります(例:six
、pytz
など)。
したがって、手動でこれらをrequirements.txt
に含める(最初の手順で明示的にダウンロードする)か、PyPIを使用してすべてのパッケージをインストールしてからpip freeze > requirements.txt
を使用して、必要なすべてのパッケージのリストを保存します。
私はpython3をインストールしましたが、/ usr/bin/pythonにある私のPythonはまだ古いバージョン2.7でした。
これはうまくいきました(私の場合は<pkg>
はpyserial
でした):
python3 -m pip install <pkg>
次のコマンドを使ってPowerShellを介してflaskをインストールしてみてください。
>>pip install --isolated Flask
これにより、インストール時に環境変数とユーザー設定を回避できます。
2時間の検索の後、1行のコマンドで修正する方法を見つけました。あなたはパッケージのバージョンを知る必要があります(ちょうどPACKAGEバージョンを検索してください)。
コマンド:
python3 -m pip install --pre --upgrade PACKAGE==VERSION.VERSION.VERSION
以下のコマンドは私のために働いた -
python -m pip install flask