c - 将参数传递到 ./configure

标签 c bash gcc makefile configure

无论出于何种原因,我使用的第三方驱动程序都需要在 Makefile 中添加 -I/usr/include 作为编译器标志,否则 make 会失败因为它找不到某些头文件。

我不想编辑提供的 Makefile,而是在我自己的 bash 脚本中将 -I/usr/include 传递给 ./configure它构建了其他几个驱动程序..

我已经用 ./configure 尝试了以下两种方法

--includedir=DIR       C header files [PREFIX/include]
--oldincludedir=DIR    C header files for non-gcc [/usr/include]

DIR 替换为 /usr/include

两次构建都失败了,但是如果我将 -I/usr/include 添加到 makefile 中的 EXTRA_CFLAGS,那么 make 就会运行成功。

是否可以为包含目录提供 makeconfigure 以便我不必编辑第三方 makefile?或者我只是在某处遗漏了什么?

最佳答案

如果它是一个标准的 autoconf 包,那么用户(您)拥有 CFLAGSCXXFLAGS CPPFLAGS(这里的 CPP 代表 C 预处理器,而不是 C++)变量,所以你可以随意修改它们。例如,这些中的任何一个都应该做你想做的:

./configure CPPFLAGS='-I/usr/include'

或:

make CPPFLAGS='-I/usr/include'

关于c - 将参数传递到 ./configure,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23964078/

相关文章:

c++ - 用于调试信息文件的 DWARF diff 工具

c - 在 C 中以某种方式对某些值更好

linux - bash脚本: command not found

c - LLVM 不使用机器指令

linux - 为什么在 find 命令中使用 dirname 会为每个匹配项提供点?

bash - shell脚本: how to pass 2 parameters in for loop?

c++ - 比较两个map::iterators:为什么需要std::pair的拷贝构造函数?

c++ - 编译器如何知道如何递增不同的指针?

c - 用于共享对象库的 Lua 5.1 自定义加载器

c - 从文件中读取数据并将其写入链表