如何告诉autootools配置不检查功能

时间:2017-10-30 18:15:34

标签: ruby autotools configure automake autoconf

我正在使用包含configure.in脚本的Ruby源代码,其中包含以下行AC_CHECK_FUNCS(clock_gettime)

在我的系统上,它会找到这样一个函数,Ruby将继续构建依赖于此函数的二进制文件。但是,这个函数对于其他操作系统是不可移植的,所以我想告诉./configure脚本即使找到它也不要使用这个函数。

如果我可以通过命令行选项指示./configure不使用此函数,那将是完美的,我非常希望尽可能不修改configure.in脚本。我的问题是,我该怎么做?我似乎无法找到正确的命令行选项。

1 个答案:

答案 0 :(得分:0)

  

我的问题是,我该怎么做?我似乎无法找到正确的命令行选项。

首先,评论中有一个很好的建议:为了获得最佳结果,可以在最老的系统上构建(或设置),并尝试尽可能减少依赖关系。 glibc很适合符号版本控制和兼容性,但许多其他库不是。

也就是说,如果你真的想绕过支票,那么这样做的方法就是用你想要的结果预先填充一个缓存文件。制作缓存的一种简单方法是运行configure,然后编辑它,然后重新运行configure。

缓存变量命名方案is documented,但通常只需在config.cache中搜索函数名称即可找到所需内容。

也许甚至可以在configure命令行上设置缓存变量 - 但我从未尝试过这个。