在配置/ make时将编译标志附加到CFLAGS和CXXFLAGS

时间:2014-05-01 12:25:39

标签: makefile configure autoconf automake

我尝试构建的项目有默认标志

CFLAGS = -Wall -g -O2

CXXFLAGS = -g -O2

我需要在这两个变量上附加一个标记-w(要删除:'将所有警告视为错误')

我有一种方法可以解决,给出

make 'CFLAGS=-Wall -g -O2 -w'; 'CXXFLAGS=-g -O2 -w'

OR

运行./configure并静态修改Makefile

但是我希望在运行configuremake

时使用现有选项附加我的选项

帖子 Where to add a CFLAG, such as -std=gnu99, into an autotools project 方便地使用宏来实现这一点。

1 个答案:

答案 0 :(得分:46)

你差不多了;你为什么要加分号?

要在configure行上执行此操作:

 ./configure CFLAGS='-g -O2 -w' CXXFLAGS='-g -O2 -w'

要在make行上执行此操作:

 make CFLAGS='-g -O2 -w' CXXFLAGS='-g -O2 -w'

然而,这并没有真正删除将所有警告视为错误;删除所有警告。因此,同时指定-Wall-w并不合理。如果您想保留警告但没有将其视为错误,请使用-Wall -Wno-error标记。

或者,默认情况下启用configure的大多数-Werror脚本也会有--disable-werror或类似的标记。运行./configure --help,看看是否有类似的内容。