使用 AM_INIT_AUTOMAKE 参数并配置脚本命令行参数

Posted

技术标签:

【中文标题】使用 AM_INIT_AUTOMAKE 参数并配置脚本命令行参数【英文标题】:Using AM_INIT_AUTOMAKE parameters and configure script command line parameters 【发布时间】:2014-03-03 17:02:35 【问题描述】:

是否可以在配置脚本中使用两个命令行参数,ala:

../configure CXXFLAGS=-O0 -g -foo -bar -bat

同时将传递给 AM_INIT_AUTOMAKE 的任何选项保留在 configure.ac 文件中?例如:

AM_INIT_AUTOMAKE([-Wall -Werror])

我想要的结果是所有上述标志都被传递,例如:

-O0 -g -foo -bar -bat -Wall -Werror

似乎在命令行上指定 CXXFLAGS 会导致或覆盖传入 AM_INIT_AUTOMAKE 的内容。如果有人知道将两组合并的方法,那将非常有帮助。谢谢!

【问题讨论】:

【参考方案1】:

-W 警告类别options 与C[XX]FLAGS 无关。这些是调用 automake 时使用的命令行参数。

相反,AM_INIT_AUTOMAKE 选项(如 -Wall)不会影响编译器标志。只是决定使用这些开关名称会导致混淆。它们具有相似的含义,例如,-Werror 会将 automake 警告视为错误,但完全不相关。

简而言之,你必须在C[XX]FLAGS中传递-Wall等,才能影响编译器。并将-Wall 添加到AM_INIT_AUTOMAKE 以在调用automake 时启用所有警告类别。

【讨论】:

感谢您的澄清。

以上是关于使用 AM_INIT_AUTOMAKE 参数并配置脚本命令行参数的主要内容,如果未能解决你的问题,请参考以下文章