我需要使用自动工具禁用单个文件的优化标志。最好的方法是什么?
问问题
818 次
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 回答