gcc:无法找到Python.h,当它在/usr/includes/python2.7中?

时间:2012-06-08 08:47:17

标签: python c gcc include include-path

我的C代码:

#include<stdio.h>
#include "Python.h"

int main()
{
    printf("Hello World");
    return 0;
}

我为python2.7安装了python-dev。此外,Python.h中提供了/usr/include/python2.7

gcc myfile.c #Python.h:没有这样的文件或目录

我甚至尝试过: gcc -L/usr/include/python2.7/ myfile.c #Pix.h:没有这样的文件或目录

我尝试用pip构建一个python c模块ujson,使用Python.h,它能够编译。

我错过了什么/做错了什么?

2 个答案:

答案 0 :(得分:10)

应该是-I,而不是-L

gcc -I/usr/include/python2.7 myfile.c

答案 1 :(得分:0)

使用

#include <Python.h>

而不是

#include "Python.h"

include头文件。 Python.h文件应该是包含的第一个文件。

@see Extending Python with C or C++(第1.1节注释)

  

由于Python可能会定义一些影响的预处理器定义   某些系统上的标准头文件,您必须先包含Python.h   包含任何标准标题。