拡張モジュールは、ext_modules オプションを使って指定します。 package_dir は、拡張モジュールのソースファイルをどこで 探すかには影響しません; pure Python モジュールのソースのみに影響します。 もっとも単純なケースでは、単一の C ソースファイルで書かれた単一の拡張 モジュールは:
<root>/ setup.py foo.c
foo 拡張をルートパッケージ下に所属させたい場合、 setup スクリプトは
from distutils.core import setup from distutils.extension import Extension setup(name='foobar', version='1.0', ext_modules=[Extension('foo', ['foo.c'])], )
同じソースツリーレイアウトで、この拡張モジュールを foopkg の下に置き、拡張モジュールの名前を変えるには:
from distutils.core import setup from distutils.extension import Extension setup(name='foobar', version = '1.0', ext_modules=[Extension('foopkg.foo', ['foo.c'])], )
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。