自宅の新しい開発マシンに開発環境をセットアップしようとしています。私はちょうどUbuntuをインストールしましたが、今私はWebサーバーからリモートリポジトリをクローンし、依存関係をインストールして作業を開始しようとしています。Pipは起動したvirtualenvにパッケージをインストールせず、requirements.txtを無視します
これまでのところ、私は手動でvirtualenv
とvirtualenvwrapper
をpypiからインストールし、私の端末を起動するときに私のvirtualenvをソースに適切に編集しました。私は~/projects/project-name/websitename.com
にレポをクローンしました。それから私はvirtualenvwrapper
からmkvirtualenv env-name
までを~/projects/project-name/websitename.com
から使いました。これは、私が複製しているウェブサーバのfile-structure/setup
を正確に反映しています。ここまでは順調ですね。
私はdevサーバーにログインしてvirtualenv
を有効にし、pip freeze -l > req.txt
を使用して依存関係リストとscpをローカルマシンに表示します。ローカルマシンのvirtualenv
を有効にし、~/projects/project-name/websitename.com
に移動してpip install -r path-to-req.txt
を実行し、何も問題がないかのようにすべての依存関係を実行します。しかし、manage.py syncdb
にしようとすると、コアのdjangoパッケージが見つからないというエラーが表示されます。なんてこったい?だから私は何とかDjangoがインストールに失敗したと思う、私はrun pip install Django==1.5.1
、それは正常に完了します。サイトをもう一度セットアップして、django_extensions
という名前のモジュールについて別のエラーが発生しました。さて、どうしたらいいですか、私はこれらのパッケージのすべてをpipでインストールしましたか?
だから私はpip freeze -l > test.txt
とcat test.txt
ですが、それは何をリストしていますか? Django==1.5.1
、私は手動でインストールした1つのパッケージです。指定されたリストから私の依存関係を私のvirtualenvにインストールするのはなぜですか?私はここで何がうんざりしていますか?
-EDIT -------------私が唯一の1 virtualenvのを持っており、それがアクティブになる
私はvirtualenvにピップするパスを与えるピップ
あなたがしていることはすべてうまくいくようですが、「どのpip」でデバッグしようとしますか? – elyase
'find〜/ .virtualenvs -type d -iname"パッケージ化 "を実行して、必要なパッケージがインストールされているかどうかを確認してください。また、 'https:// gist.github.com/insin/1425703'を使うことをお勧めします。これはあなたのbashで起動されたvirtualenvについて素早いプロンプトを表示します。 – sagarchalise
あなたのコマンドを実行すると、私のvirtualenv内の唯一のパッケージは、手動でpipにDjangoをインストールするよう頼んだものです。要件ファイルのpipで処理されたものはすべて無視されました。私は何とか私が起動したvirtualenvを示すすばらしいプロンプトを得る。 – leotemp