0

我目前正在两台不同的机器上开发。在一个gcc映射到 gcc 4.6 并且有一个gcc3适合需要真正旧版本 gcc 的人。在另一台机器gcc上映射到 v3 gcc,并且有一个gcc4用于调用较新编译器的命令。

问题应该很明显 - 我想要两台机器都有一个 makefile,这基本上意味着CC根据是否gcc4可以找到来定义。

4

1 回答 1

1

作为一个快速破解,你可以在你的makefile中添加一个简单的基于shell的检查gcc4 bin。例如:

CC := $(shell gcc4 -dumpversion >/dev/null 2>&1; if [ "$$?" -eq 0 ]; then echo "gcc4"; else echo "gcc"; fi)
<...>
$(CC) -c myprogram.c -o myprogram.o
<...>

但是,对于更成熟的项目,我建议考虑为此类任务设计的工具(autoconf)。

于 2013-01-29T12:24:06.580 回答