【问题标题】:Passing Parameters into ./configure将参数传递到 ./configure
【发布时间】:2014-07-20 18:33:26
【问题描述】:

无论出于何种原因,我使用的第三方驱动程序都需要在 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

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

是否可以为包含目录提供makeconfigure,这样我就不必编辑第三方makefile?还是我只是在某处遗漏了什么?

【问题讨论】:

    标签: c bash gcc makefile configure


    【解决方案1】:

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

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

    或:

    make CPPFLAGS='-I/usr/include'
    

    【讨论】:

    • 另外,--includedir 不起作用的原因是因为这是安装头文件的地方。不是在哪里可以找到它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-31
    • 2015-11-03
    • 2016-09-02
    • 2020-07-28
    • 1970-01-01
    • 2014-01-05
    • 2011-06-13
    相关资源
    最近更新 更多