我正在尝试设置一个设置.py文件为一些简单的c代码设置一个python包装器。目前这是我的设置.py公司名称:
from distutils.core import setup, Extension
module1 = Extension('ledmod', include_dirs = ['/usr/include', '/usr/include/arm-linux-gnueabi'],
libraries = ['fcntl.h','sys/mman.h','sys/stat.h','sys/types.h','unistd.h'],
sources=['ledmodule.c'])
setup (name = 'ledmod',
version = '1.0',
description = "LED example for TS7400v2",
author='author',
url='site',
ext_modules=[module1])
这是我的c代码:
^{pr2}$但是,我似乎无法使用sudo python setup.py build
进行构建,因为我得到了以下错误:
running build
running build_ext
building 'ledmod' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include -I/usr/include/arm-linux-gnueabi -I/usr/include/python2.7 -c ledmodule.c -o build/temp.linux-armv5tejl-2.7/ledmodule.o
ledmodule.c: In function 'ledmodset':
ledmodule.c:25:2: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
warning: no library file corresponding to 'sys/mman.h' found (skipping)
warning: no library file corresponding to 'sys/stat.h' found (skipping)
warning: no library file corresponding to 'sys/types.h' found (skipping)
gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro build/temp.linux-armv5tejl-2.7/ledmodule.o -lfcntl.h -lunistd.h -o build/lib.linux-armv5tejl-2.7/ledmod.so
/usr/bin/ld: cannot find -lfcntl.h
/usr/bin/ld: cannot find -lunistd.h
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1
我错过了什么?我列出了库和包含目录。。。但是从错误中找不到库。在
头文件不是库。在
如果从中完全删除
include_dirs
和libraries
设置设置.py,您的扩展应正确编译。如果仍然不起作用,请发布新的一组错误消息。在相关问题 更多 >
编程相关推荐