在* -I之前将包含目录添加到gcc *

时间:2013-07-07 08:30:48

标签: c gcc compilation

来自文档:

CPATH指定要搜索的目录列表,就像使用-I指定一样,但是在命令行上使用-I选项指定的任何路径之后。无论预处理哪种语言,都使用此环境变量。

在我的机器上,我想要例如交叉编译,或者,有一个版本化的替代包括。我想用这些来编译其他人的代码。

具体来说,我有几个不同版本的python及其相关的Python.h文件。

$ python setup.py枕头 失败,因为它首先找到的包不是所需的包。 (/ usr / local / include有一个旧的Python.h,但我需要/usr/local/include/Python2.7来“赢”)。

将/usr/local/include/Python2.7添加到CPATH(或C_INCLUDE_PATH)不起作用,因为它稍后放置。

据我所知,这不是特定于python的 - 当然有办法强制GCC在-I / CPATH之前有路径吗?

1 个答案:

答案 0 :(得分:1)

它有点hacky,但您可以将它添加到您的编译器var

Makefile语法

 CC = gcc -Ipath

或者

 export CC="gcc -Ipath"

或者用于CXX变量的g ++。