2013-03-11 10 views
5

私はsetup.pyスクリプトを書いて、MySQLのパッケージへの依存関係を指定したいよ必要があります。それは考えているのでsetup.pyは、MySQL-pythonの

requires=['requests', 'mock', 'GitPython', 'MySQL-python'] 

しかしMySQL-pythonは、セットアップツールについて違法になりそうだが、その存在-後バージョンでなければなりません:

ValueError: expected parenthesized list: '-python'

私はここで何ができますか?

環境:Python 2.7.3; distutils documentationから32

答えて

1

精密:

あなただけのMySQL-Pythonの _mysqlモジュールをオフにチェックすることができるはず念頭に置いて

To specify that any version of a module or package is required, the string should consist entirely of the module or package name. Examples include 'mymodule' and 'xml.parsers.expat'.

requires=['requests', 'mock', 'GitPython', '_mysql'] 
0

この時点で、あなたが従うべきではありませんdistutilsのドキュメントrequiresは、ディストリビューションのメタデータを定義するPEPに由来しますが、distutilsを含むどのツールでも実際には動作しません。現時点では、標準ライブラリにないパッケージングツールを選択し、依存関係とビルド時間の依存関係を定義するための規則を使用する必要があります。 pipには要件ファイルがあります。 distributeにはrequires_distとsetup_requiresがあります。ビルドアウトに何か他のものがあります。

+2

'pip install -r requirements.txt'を使うのがいいでしょうか?しかし、私は使いやすいパッケージをユーザーに提供することはできません。ユーザーは思っていません。単に 'pip install myapp'を実行するだけです。それとも、他の提案がありますか? –

関連する問題