pipまず、これは、の代わりに使用したい多くの理由の1つですeasy_install。easy_install(それでも自分自身を取得する必要がありますpipが、それを超えて、二度とそれに触れないでください。)使用pipしたことがある場合は、これを行うことができます。
pip freeze > modules.dump
これにより、インストールしたすべてのモジュールとそのバージョン番号のリストが表示されます。ほとんどの場合、モジュールのリスト(line.split('==')[0] for line in f)を取得して、に渡すことができpip installます。
しかし、それは将来の参考のためです。site-packages今日は、ディレクトリを調べて自分でつなぎ合わせる必要があります。幸いなことに、多くのことが最終的にはになるfoo_bar-1.2.3.4-blah-blah.eggので、あなたがしなければならないのは、パッケージの名前 がPyPIであるfoo-barかfoo_bar、PyPIであるかを推測するeasy_installことだけpipです。したがって、完全に自動化することはできませんが、近づくことはできます。
しかし、はい、どのように実行しても、再インストールする必要があります。C拡張コードが必要なものはすべて再コンパイルする必要があります。Pure-Pythonパッケージを変更する必要はないかもしれませんが、変更する必要があります。申し訳ありませんが、安全性は高くなります。また、あるものをコピーしようとして、他のものをコピーしようとしない場合、依存関係を大きく混乱させることになります。
(1)パッケージがPython 2.6パッケージディレクトリにインストールされている場合、Python 2.7などの新しいPythonのPYTHONPATHにインポートすることは正当ですか、それともすべてのパッケージをPython 2.7で再インストールする必要がありますか?
そうしないでください。上で説明したように、それらを再インストールします。
(2)easy_installを使用している場合、新しいPythonを使用するように指示するにはどうすればよいですか?例:2.6ではなく2.7?または、Python 2.7を使用してeasy_installを再インストールするだけで、これを実行できますか?ありがとう。
2.7が必要ですeasy_install。easy_install通常、たとえば、を実行することで2.7と2.6を使用できますpython2.6 $(which easy_install)が、その逆が機能することは保証されていません。
そして、あなたはとにかくそれをしたくありません。2つのバージョンのPythonを並行して使用する場合は、2つのバージョンを使用する必要がありeasy_installます。通常は、「プライマリ」Pythonと見なす方へのシンボリックリンクとしてeasy_install-2.6とeasy_install-2.7を使用します。easy_install