2

私は通常、独自のコードを作成するときは常に IDE を使用します。make、configureスクリプトなどについてはあまり知りません。

私は現在、大規模で複雑な既存のプロジェクトに取り組んでおり、構築する手順は次のとおりです。

./autogen.sh
./configure
make

独自の C ファイルを作成し、Makefile.am に追加しました。次に、このプロセスを繰り返してビルドします。

1つのことを除いて、すべて問題ありません。-Wall などのコンパイラ オプションを使用せずにビルドしたい。このように CFLAGS を使用すると、必要なものが得られると言われました。

./configure CFLAGS=-O0

コンパイラはまだ -Wall オプションを使用しているため、動作していないようです。configure スクリプトの CFLAGS="..." からすべての -Wall を手動で削除できます。これは面倒ですが、うまくいきます。しかし、私が実行すると

./autogen.sh

configure スクリプトがリセットされ、すべての -Wall (およびその他の不要な CLFAGS) が元の場所に戻されます。(確かではありませんが、新しいファイルを Makefile.am に追加するたびに autogen.sh を実行する必要があると思います。)

これに対処するより良い方法はありますか?

4

2 に答える 2

3

する

./configure --help

ショー

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

より良いアプローチは

env CFLAGS="-O0" ./configure

次に、単純な

make

あなたが期待するようにします。これは、他のコンパイル フラグを設定するのに役立ちます。

于 2015-09-27T19:37:36.927 に答える