2009-04-25 11 views
3

私はPythonを既存のC++アプリケーションのプラグインスクリプト言語として使用しています。私は、Pythonのドキュメントに記載されているように、Pythonインタプリタを埋め込むことができます。インタプリタの初期化と初期化解除ですべて正常に動作します。しかし、標準ライブラリをzipファイル(通常はpython dllのバージョン番号に対応するPythonXX.zip)に圧縮することができなかったため、モジュールのロードに問題があります。埋め込み配布用にPython26.zipを構築する最も簡単な方法は何ですか?

最適化されたバイトコードのコンパイル後に、すべての標準ライブラリを圧縮する最も簡単な方法は何ですか?私は本当にこれを手でしたくないので、私は単純なスクリプトやコマンドを探しています。

アイデア?

ありがとうございます!

+1

答えを見つけましたか?もしあなたがここにそれを掲示できれば素晴らしいだろう。 – sambha

答えて

2

スクリプトを書くのは難しいことではありません。 zipfile.PyZipFileクラスをチェックしてください。それはwritepyメソッドです。

2

私はおそらくsetuptoolsを使って卵(基本的にはPython用のJava jar)を作成します。

from setuptools import setup, find_packages 

setup(
    name='python26_stdlib', 
    package_dir = {'' : '/path/to/python/lib/directory'}, 
    packages = find_packages(), 
    #any other metadata 
) 

あなたはpython setup.py bdist_eggを使用して、これを実行することができ:setup.pyは、おそらく次のようになります。卵ができたら、pythonパスに追加するか、setuptoolsを使ってインストールすることができます。私はこれもあなたのためのpycsの世代を処理する必要がありますと信じています。

注::これは私のシステムのpythonディレクトリでは使用しません。これにはvirtualenvを設定するとよいでしょう。

関連する問題