2011-11-27 5 views
7

私のpython 2.7用のPythonスクリプトを持っている、と言うこの:CythonのPythonランタイムとの静的リンクですか?

print("Hello World!") 

次私が使用してCにこれを回す:

python cython.py --embed helloworld.py 

そして私は、静的にコンパイルしよう:

gcc -IC:\Python27\include -LC:\Python27\libs helloworld.c -Wl,-Bstatic -lpython27 
    -Wl,-Bdynamic 

しかし、gccはPython27.dllランタイムを使用するバイナリを作成するだけです。ランタイムに静的にリンクするバイナリを作成するにはどうすればよいですか?

+0

あなたは静的なlibpython27.aがgccでコンパイルされている必要がありますが、現時点ではビルド可能ではない(少なくとも正式には)、activestateディストリビューションでは\ libsサブディレクトリにpython27.libがありますが、ちょうどこのhttp://code.google.com/p/pts-mini-gpl/wiki/StaticPythonを見ましたが、ウィンドウはサポートされていません(明らかに) – sherpya

+0

Visual Studioを使用していても、これは数日で面倒なことがあります前に私は似たような質問をしてきました:http://stackoverflow.com/questions/8194489/cpython-sources-how-to-build-a-static-python26-lib –

答えて

2

LinuxまたはOS Xから作業している場合は、Pythonを静的にビルドする(Windowsを含むすべてのサポートされているプラ​​ットフォーム用) "裸の"モードのBuilderツールmy engine'sを使用できます。モジュールを作成し、ソースコードを「サイコム化」し、ソースも組み込みます。これがあなたの請求書に合わない場合は、達成するために必要なことについて、sourceからアイデアを得ることができます。

関連する問題