配置脚本中的CFLAGS

时间:2015-09-26 01:23:34

标签: c makefile configure autogen

每当我编写自己的代码时,我通常会使用IDE。我不太了解make,配置脚本等等。

我现在正在开展一个庞大而复杂的现有项目,而构建的步骤是:

./autogen.sh
./configure
make

我编写了自己的C文件并将它们添加到Makefile.am中。然后我重复这个过程来构建。

一切都很好,除了一件事。我想在没有像-Wall这样的编译器选项的情况下构建。我被告知使用这样的CFLAGS会给我我想要的东西:

./configure CFLAGS=-O0

它似乎不起作用,因为编译器仍然使用-Wall选项。我可以从配置脚本中的CFLAGS =“...”手动删除所有出现的-Wall。这很烦人,但它确实有效。但是当我执行

./autogen.sh

将配置脚本重置为原始位置的所有-Walls(以及我不想要的其他CLFAGS)。 (我不确定,但我想每次向Makefile.am添加新文件时都必须运行autogen.sh。)

有没有更好的方法来解决这个问题?

2 个答案:

答案 0 :(得分:2)

最简单的方法可能是在使用ssh实际构建时执行此操作:

make

但这对于那个版本来说只是暂时的,它不会是永久性的。

答案 1 :(得分:2)

做一个

./configure --help

显示

Some influential environment variables: ...
  CFLAGS      C compiler flags

更好的方法是

env CFLAGS="-O0" ./configure

然后一个简单的

make

如你所愿。这有助于设置其他编译标志。