私は次のものを作成しようとしています:
任意のシステム (以前のバージョンの python または python がインストールされていないもの) で実行でき、さまざまな python パッケージ (つまり、django、lxml、pysqlite など) で事前構成されている python のポータブル バージョン
上記に最も近いのはvirtualenvですが、これはこれまでのところしかありません。
1 台のマシンで Python 用の素敵な virtualenv をパッケージ化すると、必要な多くのライブラリへのシンボリック リンクが含まれます。これらのシンボリック リンクを実際のファイルに変換することはできますが、このディレクトリ全体を別のマシンに移動しようとすると、seg fault が次々と発生します。
別のマシンで python を起動するには、次を使用しています。
LD_LIBRARY_PATH=lib/ ./bin/python
lib/ には、元のマシンからコピーしたすべての共有ライブラリがあります。ここでの問題は、これらの共有ライブラリが、私が含めていない他の共有ライブラリに依存している可能性があるため、他の Linux ディストリビューションでこれを実行しても機能しないことです。おそらく、システムにインストールされた古い共有ライブラリにフォールバックしたためで、コピーしたものでは機能しません。
誰でもこれを機能させる方法について考えがありますか? これは可能ですか?
編集:
明確にするために、望ましい結果は、Linuxベースのシステム(ubuntu 8.04、redhat 5、suseなど)で抽出して実行できるpythonバイナリと関連パッケージ(django、lxml、pysqliteなど)のtar.gzを作成することです。 11 など)、すべての 32 ビット ディストリビューション。ローカルにインストールされたバージョンの python は、tar.gz の内容に影響しません。