私はPython拡張モジュールをC++で書いています。 setuptoolsを使ってモジュールを配布する予定です。 32ビットおよび64ビットWindows(setup.py bdist_egg
で構築)用のバイナリディストリビューションと、UNIX風プラットフォーム(setup.py sdist
で構築)用のソースディストリビューションがあります。ライセンスファイルをsetup.pyスクリプトに含めるには?
私はこのモジュールをBSDライセンスの下でライセンス供与する予定です。 私のソースツリーでは、LICENSE.txtファイルはsetup.pyと共に最上位のフォルダにあります。 インストールパッケージにどのように含める必要がありますか?私は、次のsetup.pyスクリプトを試みた
:それは動作しませんでした
from setuptools import setup, Extension
from glob import glob
setup(
name = 'Foo',
version = '0.1.0',
ext_modules = [Extension('Foo', glob('Source/*.cpp'))],
package_data = {'': ['LICENSE.txt']}
)
を、ライセンスファイルはインストールパッケージに含まれていません。 setup.pyファイルでパッケージが定義されていない可能性があります。つまり、 は1つの拡張モジュールだけです。
これを修正するにはどうすればよいですか?
"LICENSE.txt"は["LICENSE.txt"]にする必要があります。パス "/"はUNIXのシステムルートであり、Windowsでは存在しません。 Windowsでテストしたところ、存在しないパスに関するエラーメッセージが表示されました。代わりに ""を使用すると動作するようです。 LICENSE.txtが "C:¥Python27¥Lib¥site-packages¥Foo-0.1.0-py2.7-win32.egg"というフォルダにあり、Foo.pydと同じフォルダになったとテストしたとき – user763305
@ user763305:私あなたの発言で私の答えを編集しました、申し訳ありません。私の答えがあなたの問題を解決した場合は、私の答えの左側にあるチェックマークをクリックして、それを合格とマークすることを検討してください。 – orlp