使用-lwiringPy在C中编译Python模块

时间:2016-10-31 18:01:28

标签: python c module raspberry-pi

我在C中编写了一个Python模块,它使用WiringPy库来控制树莓派上的引脚。但是,在我编译C模块并尝试在我的python脚本中导入模块后,我收到一条错误消息说

undefined symbol: digitalWrite

(这是我在C文件中使用的WiringPy函数)。

我使用Python安装脚本编译和安装我的C模块。

from distutils.core import setup, Extension
setup(name='PyRFWrap', version='1.0',  \
ext_modules=[Extension('PyRFWrap', ['gpiotest.c'], extra_compile_args=['-lwiringPi'])])

如何正确安装和编译我的C文件?当我用GCC编译它并独立运行C文件时,它完美地工作。

1 个答案:

答案 0 :(得分:0)

解决方案是使用extra_linker_args而不是extra_compile_args,因为标志-lwiringPi用于链接器而不是编译器。