我有一个python包,可以构建自己的扩展模块。目前我正在将setup.py中的所有编译作为ext_module进行,但我确实需要AC_CHECK_LIB类型的功能 - 是否有类似于setup.py的内容,或者我是否需要为我的模块编写autoconf?
这里的具体情况是,很多发行版现在都有libc中包含的iconv,但我仍然需要支持发行版,其中-liconv需要传递给gcc。如何检查libc中是否包含iconv功能?
我是否应该通过setup.py跳过这一切,并使用autoconf?
谢谢!
答案 0 :(得分:1)
从我的探索中看,它看起来并不像你能做的那么多。使用autoconf
生成setup.py
可能会很幸运,或者您可以使用automake
和libtool
并使用autofoo执行整个操作。 Automake提供了一个宏AM_PATH_PYTHON
,它设置了一大堆有用的变量,并给出了以下示例来声明扩展模块:
pyexec_LTLIBRARIES = quaternion.la
quaternion_la_SOURCES = quaternion.c support.c support.h
quaternion_la_LDFLAGS = -avoid-version -module