我有C++静态库和使用它们的可执行文件,每一个都在一个单独的文件夹中。每个项目都可以在调试或发布配置中构建,当文件层次结构如下。
Static_Lib1\Debug\staticlib1.a
Static_Lib1\Release\staticlib1.a
//对所有其他静态库也是如此
Executable\Debug\executable
Executable\Release\executable
所有的Debug和Release文件夹都包含makefile文件。
我试图写一个外部的makefile来调用每一个内部项目,使用选定的配置--调试或发布。
So, I tried something like:
CFG= #empty declaration
PROJECTS=Static_Lib1 Static_Lib2 ... Executable
release #default config is release
release:
CFG = Release
make build-all
debug:
CFG = Debug
make build-all
build-all:
make clean
$(foreach projectName, $(PROJECTS), cd $(projectName)/$(CFG) && make all;)
但是,当我试图,例如,运行make debug
时,得到这样的输出。
CFG = Debug
make: CFG: Command not found
make: *** [debug] Error 127
我怎样才能解决这个问题呢?
My OS is SLED 11x64.
提前感谢您!