2009-06-28 10 views
2

Cライブラリには、リンク時に使用されたライブラリの正確なバージョンが記録され、同じライブラリの複数のバージョンがインストールされている場合でも、実行可能ファイルが正しいファイルを見つけることができる素晴らしい形式の遅延バインディングがあります。同一のライブラリの2つのバージョンが同じPythonインストールで共存できますか?

同じことをPythonで行うことはできますか?

私は、具体的には、paramikoなどのサードパーティライブラリを使用するPythonプロジェクトを作成します。 Paramikoはバージョン1.7.4になりましたが、一部のディストリビューションには古いバージョンのPythonが付属していますが、ほぼ同じバージョンのPythonインタプリタを提供しています。

もちろん、最新のディストリビューションだけでなく、できるだけ多くの構成をサポートしたいと思います。しかし、私が古いディストリビューションが提供するものからparamikoのインストールされたバージョンをアップグレードすると、私は1)パッケージマネージャーの生活を困難にする2)ライブラリバージョンの非互換性のためにいくつかの既存のアプリケーションを壊す可能性があり、3)カスタムインストールを上書きすることに決めました。

Pythonでこの問題を完全に解決することは可能ですか? (つまり、セットアップをどのように行うのか、コードはどのように見えるのですか)。理想的には、サイトライブラリにいくつかのバージョンのライブラリをインストールし、手動でインストールされたライブラリのセットでプライベートディレクトリを維持するのではなく、スクリプトが正しいものを選択できるようにするのが理想的です。

PS:それに必要なすべての依存関係を持っているバイナリですが、ディストリビューションが提供するインタプリタを使用するというアイデアに反するものです。私はWindows上でそれをやる。

+0

を見てみたいことがありは:なぜあなたはparamikoの正確なバージョンを気にしていますか? –

答えて

8

あなたは、私は理解していないですvirtualenv

+0

+2、virtualenvはOPの問題に対する正しいアプローチのように聞こえます。 –

関連する問題