我尝试在Mac OS X 10.6.8和Python 2.7.4上使用ctypes
访问一个共享的Python C库。要做到这一点,我需要在我的C代码中使用#include <Python.h>
。如果我尝试编译一个只有一个include语句的C脚本,将其命名为“sample.c”,我会得到:
$ gcc -shared -o sample.so sample.c
sample.c:1:20: error: Python.h: No such file or directory
由于我运行的是Mac 10.6,我有Xcode 3.2.6,这是OS X的最新版本,无需付费升级到10.7并获得Xcode 4。有没有办法在不升级OS的情况下获得Python头文件?
5条答案
按热度按时间2ledvvac1#
Python是MacOSX上的一个框架,
您还需要使用
-framework
参数调用gcc
,oalqel3c2#
我不确定10.6.8,但
Python.h
应该在如果您安装了正式的python.org二进制文件。请尝试添加
到
gcc
命令,看看它是否有效。alen0pnh3#
如果你已经使用Brew安装了Python,那么检查你的头文件的位置可能是值得的。
nfs0ujit4#
另一种方法是将
python-config --include
添加到gcc
调用中。也可以检索其他选项,如
python-config --cflags --ldflags
。python-config
或python3-config
通常在brew install python
之后可用。反勾号是bash
特定的。要查看它会输出什么(例如,当不使用bash
时),请使用nwsw7zdq5#
我的问题通过安装Xcode命令行工具得到了解决: