我们使用一个自动构建系统来下载和编译源代码。我必须控制编译行为的唯一接口是通过设置ENV VAR和给`./configure‘的参数。
问题是(我正在编译的特定源代码的)“configure”脚本检查系统头文件,如果找到该文件,将对编译过程产生不利影响。(当找到上述系统头文件时,编译过程将避免编译它认为已经安装在本地系统上的库。)
因为这是一个自动化的过程,所以我不能修改'configure‘脚本,如前所述,我只能指定传递给’configure‘的环境变量和参数。配置脚本使用AC_CHECK_HEADERS宏来生成对系统文件执行检查的代码。有什么方法可以避免在配置参数中检查特定的系统文件吗?
麻烦的头文件位于路径/usr/include/pcap/中。
谢谢
发布于 2011-12-17 03:28:28
好吧,有几件事你可以尝试一下:
AC_CHECK_HEADERS
中删除foo.h并始终构建库AC_CHECK_HEADER
foo.h并检查/usr/include/pcap/
foo.h是否存在/usr/include/pcap/
foo.h。<代码>H29<代码>H110您可以使用AC_ARG_ENABLE
或AC_ARG_WITH
通过configure
的参数在逐个主机的基础上关闭有问题的测试。所以这个问题的答案是肯定的。
所有这些都假设您可以修改configure.ac
并重新生成configure
。如果您不能做到这一点,您可能不得不修改configure
(当然,以自动的方式)。
https://stackoverflow.com/questions/8536041
复制相似问题