2012-04-06 7 views
4

IP2Location Python libraryをローカルのPypi/Cheeseshopサーバーに置いて、buildoutを使って自動的にプロジェクトに組み込むことができます。Cライブラリを使ってPythonのpypiパッケージを作成するにはどうすればよいですか?

まず、私はそれをIP2Locationの者(簡潔)のドキュメントで説明される方法をインストールすることによって、ライブラリをテストした:1)IP2Location C libraryをダウンロードし、それを2)IP2LocationのPythonライブラリにpython setup.py build && python setup.py installを実行してコンパイルします。

私が働いて、そう、私は実行することによって、私の地元は、PyPIサーバーにPythonライブラリをアップロードしようとしたことだ:

python setup.py register -r local sdist upload -r local 

それは私の地元は、PyPIサーバーにパッケージをアップロードしますが、パッケージが唯一のPythonが含まれていライブラリの一部であり、Cの部分ではありません。ビルドアウトのようなツールがローカルのpypiサーバーからダウンロードされると、Cライブラリもインクルードされ、自動的にコンパイルされます。

私はかなりpypiに新しいです。私がしようとしていることは可能なのでしょうか?もしそうなら、どうですか?

おかげで、 スコット

答えて

2

は残念ながらありません、少なくとも道のsetup.pyはPythonライブラリで構成されていません。 次のことを試してみてください。IP2Locationは独自のライブラリです。

zc.recipe.cmmiでビルドアウトのCライブラリをビルドしてください。以下のようなセクションが必要です。

[iplocationc] 
recipe = zc.recipe.cmmi 
url = http://www.ip2location.com/downloads/ip2location-c-4.0.2.tar.gz 

その後、zc.recipe.eggを使用して卵などのpythonの対応をインストールします。

[iplocation] 
recipe = zc.recipe.egg:custom 
eggs = iplocation 
include-dirs = ${buildout:directory}/parts/iplocationc/includes_dir_goes_here 
rpath = ${buildout:directory}/parts/iplocationc/libs_dir_location_goes_here 

あなたはレシピのビットをパラメータとおそらくsetup.pyをいじるが、うまくいけば、これはそれを行う必要があり、変更する必要がある場合があります。

関連する問題