xcode Mac OS X 10.6上缺少Python.h头文件

g9icjywg  于 2022-11-18  发布在  Mac
关注(0)|答案(5)|浏览(191)

我尝试在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头文件?

2ledvvac

2ledvvac1#

Python是MacOSX上的一个框架,

#include <Python/Python.h>

您还需要使用-framework参数调用gcc

gcc -shared -o sample.so sample.c -framework Python
oalqel3c

oalqel3c2#

我不确定10.6.8,但Python.h应该在

/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7

如果您安装了正式的python.org二进制文件。请尝试添加

-I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7

gcc命令,看看它是否有效。

alen0pnh

alen0pnh3#

如果你已经使用Brew安装了Python,那么检查你的头文件的位置可能是值得的。

nfs0ujit

nfs0ujit4#

另一种方法是将python-config --include添加到gcc调用中。

gcc -shared -o sample.so sample.c `python-config --include`

也可以检索其他选项,如python-config --cflags --ldflags
python-configpython3-config通常在brew install python之后可用。反勾号是bash特定的。要查看它会输出什么(例如,当不使用bash时),请使用

python-config --include
nwsw7zdq

nwsw7zdq5#

我的问题通过安装Xcode命令行工具得到了解决:

xcode-select --install

相关问题