2015-01-31 61 views
1

我为这个新手问题表示歉意。我目前正在寻找将一个小型Python代码嵌入到主C代码中。建议在头部使用#include <Python.h>。我已经这样做了,我的Ubuntu12-0.4机器也安装了python-dev包括<Python.h> makefile.am

通过运行locate Python.h,我得到了/usr/include/python2.7/Python.h

但是,当我将Python.h包含到我的C程序中时,它仍然给我fatal error: python.h: No such file or directory

所以Python.h没有包含在Makefile中。但我不知道如何去做。查看我的软件包列表,我有:Makefile.am,Makefile.inMakefile


在Makefile.am:

ACLOCAL_AMFLAGS = -I m4 
EXTRA_DIST = MIGRATION README.rst libmodbus.spec 
SUBDIRS = src doc tests 

pkgconfigdir = $(libdir)/pkgconfig 
pkgconfig_DATA = libmodbus.pc 

在Makefile.in, 的第一行说

# Makefile.in generated by automake 1.14.1 from Makefile.am.

我应该还包括Makefile.in完整描述到这里?我不知道该如何继续。

+0

我不知道'automake',但是当你调用'G ++'我认为应该有个选项'-L/usr/include/python2.7'。 ('/ usr/include'会自动附加到搜索列表中,但我认为这不是递归的。) – 2015-01-31 18:03:20

+0

@JamesKanze'-I/usr/include/python2.7'大写''i''而不是'L ' - 这是图书馆。或者我错了? – 2015-01-31 18:31:16

+1

@SylvainLeroux你说得对。它应该是'-I'。你也可能需要一个'-R',或者告诉链接器和可执行文件在哪里查找库(除非它在'/ usr/lib'中)。我没有Unix系统方便检查,但你也可以验证大小写;你的错误消息说'python.h',而不是'Python.h'。 – 2015-01-31 18:47:46

回答