9

多くのメイクファイルを提供するパッケージを構築しています。各メイクファイルは、次のようなサイドでハードコーディングされています

CFLAGS = -g -O2 -Wall ...
CXXFLAGS = -g -O2 -Wall ...

オプションを破棄-gしたいのですが、すべてのメイクファイルを編集したくありません (sedまたは同様のもので自動的に編集することさえできません)。パッケージに付属のconfigureスクリプトにはデバッグ オプションの有効化/無効化はありませんが、それと変数を渡すことができ、それらの値をオプションを含む変数とCFLAGS変数にそれぞれCXXFLAGS連結します。CFLAGSCXXFLAGS-g

-g指定された場合に破棄するオプションはありますか? 何かのようなもの

gcc -option-im-looking-for -g file.c -o file

fileデバッグ シンボルなしでバイナリをビルドします。バイナリを削除したくありません。削除して作成したいのです。

4

2 に答える 2

1

makefile を編集する必要はありません。コマンドラインで変数を上書きするだけです:

$ cat Makefile 
CFLAGS = -g -Wall
all:
    echo $(CFLAGS)
$ make
echo -g -Wall
-g -Wall
$ make CFLAGS=-Wall
echo -Wall
-Wall
于 2013-10-23T12:12:29.787 に答える