我正在开发两台不同的机器。在一个gcc
映射到gcc 4.6,并且有一个gcc3
用于任何需要非常旧版本的gcc的人。在另一台机器上gcc
映射到v3 gcc,并且有一个gcc4
命令用于调用较新的编译器。
问题应该是显而易见的 - 我想为两台机器提供一个makefile,这基本上意味着根据是否可以找到CC
来定义gcc4
。
答案 0 :(得分:1)
作为一个快速黑客,您可以在makefile中为gcc4 bin添加一个简单的基于shell的检查。例如:
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)。