2

Python C 拡張機能のパッケージ化に取り組んでいますが、ここで問題が発生しています。

.
|-- c_ext/
|   |-- __init__.py
|-- c_src/
setup.py

このsetup.pyで

from distutils.core import setup, Extension

setup( name = "Utilities",
       version = '1.0',
       description = ('Various utils'),
       packages = ["utils"],
       ext_modules = [Extension("utils.c_ext", ['c_src/c_extmodule.c'])]
       )

問題なくビルドできますが、インストール後にモジュールをインポートできず、ImportError が発生します。

私はそれが些細なことだと確信しているので、何が欠けていますか?

前もって感謝します!

4

1 に答える 1

0

モジュールに次のシグネチャを持つ関数がありますか。

PyMODINIT_FUNC initc_ext(void);

C 拡張機能をインポートすると、関数 init が呼び出されます。ここで、 は拡張機能の正確な名前です。(慣例では、C 拡張機能は _foo のような名前が付けられ、init_foo のような関数が得られることに注意してください)

正確なエラーは、これをより適切に診断するのにも役立ちます。

于 2012-03-17T00:08:47.830 に答える