2012-04-26 9 views
4

Pythonパッケージが大きなシステムライブラリに依存している場合、disutilsを使用してPythonパッケージを構築する適切な方法は何ですか?大きなシステムライブラリに依存するPythonパッケージを構築する方法

このファイルはsimilar questionですが、インストール可能なPythonアプリケーションであり、汎用パッケージではありません。

私はOpenCVに依存するパッケージを作成しました。私はLinuxディストリビューションをサポートすることに関心があるだけですが、ほとんどのディストリビューションはOpenCVを提供していないか、あまりにも古いバージョンを提供することはできません。残念ながら、OpenCVは、パッケージに組み込み、ビルドステップ中にコンパイルするために大規模で面倒(いくつかの他のシステムライブラリに依存しています)です。

私の現在のアプローチは、私のsetup.pyで何も特別なことをせずに、try/exceptにPythonモジュールをインポートするだけです。インポートが失敗した場合、詳細なエラーメッセージが表示されます。より良い方法がありますか?あなたはzc.buildout使用することができ

+0

あなただけの依存関係としてPythonのCVモジュールを指定することはできますか? [ctypes-opencv](http://pypi.python.org/pypi/ctypes-opencv)と[pyopencv](http://pypi.python.org/pypi/pyopencv) – jterrace

+0

@jterraceがありました。しかし、私はそれらが非常に時代遅れであるかもしれないとして私がしたいと確信していません。 Ubuntu 11.10で現在のOpenCVをコンパイルするには、非常に複雑な手順に従い、Ubuntuの標準リポジトリではなく、非常に特定の依存関係をダウンロードしてインストールする必要がありました。私はピップがそれらのステップを再現できるとは確信していません。 – Cerin

+0

私はOpenCVで全く同じことを思っています。私はあなたが "大きくて面倒な"部分を乗り越えることはできないと思いますが、あなたが望むOpenCVの部分だけを分離し、それらでコンパイルしない限り。たぶん、バイナリインストーラがあれば、セットアップでスクリプト化することができますか? – KobeJohn

答えて

関連する問題