4

autotools を使用して、個々のファイルの最適化フラグを無効にする必要があります。それを行う最良の方法は何ですか?

4

1 に答える 1

7

個々のソース ファイルまたは個々の実行可能ファイルのことですか?

実行可能ファイルの最適化を無効にするのは簡単です:

bin_PROGRAMS = myprog
myprog_SOURCES = foo.c bar.c
myprog_CFLAGS = -O0

単一のソースファイルの最適化を一時的に無効にしたい場合、たとえばデバッグの目的で、プロンプトでそのファイルを作り直すことができます: (automake マニュアルの例)

rm bar.o
make CFLAGS=-O0 bar.o
make

個々のソース ファイルに対して永続的にこれを行うのはそれほど単純ではなく、おそらく便利なライブラリを作成することによって行うのが最善です。

noinst_LIBRARIES = libnoopt.a
libnoopt_a_SOURCES = bar.c
libnoopt_a_CFLAGS = -O0

bin_PROGRAMS = myprog
myprog_SOURCES = foo.c
myprog_CFLAGS = -O2
myprog_LDADD = libnoopt.a
于 2010-02-09T09:37:28.997 に答える