gmake与make的区别
http://javajiao.iteye.com/blog/208703
一种说法:
gmake是GNU Make的缩写。
Linux系统环境下的make就是GNU Make,之所以有gmake,是因为在别的平台上,make一般被占用,GNU make只好叫gmake了。
比如在安装二进制文件进行编译时要使用make命令,但如果在Solaris或其他非GNU系统中运行,必须使用GNU make,而不是使用系统自带的make版本,
这时要用gmake代替make进行编译。
另一种说法:
gmake和BSD自带的make是不同的,他们的Makefile有些不兼容,比如说一些变量的写法和含义。
在编译出的程序如果有不同,也只是因为Makefile里指定的命令不同。
也因为内核的makefile语法有些特殊,gmake似乎不能用来编译bsd的内核,看来,只适用于bsd自带的那个make。
我也一直没有找到权威的解释,有谁路过知道详情,留个言。
gmake和make的区别
这几天在做移植发现还有个gmake,不清楚和make的区别,所以查来看看,并记下来,方便查找。
~~~~~~~~~~~~~~~~
gmake是GNU Make的缩写。
Linux系统环境下的make就是GNU Make,之所以有gmake,是因为在别的平台上,make一般被占用,GNU make只好叫gmake了。
比如在安装二进制文件进行编译时要使用make命令,但如果在Solaris或其他非GNU系统中运行,必须使用GNU make,而不是使用系统自带的make版本,这时要用gmake代替make进行编译。
~~~~~~~~~~~~~~~~
Solaris包含两种make工具:
GCC (GNU Compiler Collection)工具套装包括一个 C 编译器和一个 C++ 编译器
Solaris自身的 make 实用程序
GNU gmake在 make 文件中将调用的C编译器名称为 gcc,C++编译器的名称为 g++
make实用程序在make文件中将调用的C编译器名称为cc,C++编译器名称为CC
gmake和make是用的编译器的命令行选项中有所区别
除了少数几个基本选项(如“-c”和“-g”)之外,编译器接受的多数选项都不同
gmake与make主要用在Linux与Solaris之间的应用程序移植中
~~~
注:
Solaris是Sun公司开发和发布的操作系统,是UNIX系统的一个重要分支。
起源:首先从BSD Unix移植而来,随后逐渐转移到了System V标准。
支持平台:目前,Solaris除可以运行在SPARC CPU上外,还可以运行
在X86 (IA32)的CPU上。最近又被移植到了最新的AMD64位CPU Opteron上.
市场地位:在服务器市场上,Sun的硬件平台具有高可用性和高可靠性,Solaris是
当今市场上处于支配地位的Unix类操作系统。
make 一般指SysV make
gmake是指GNU make
gmake对make扩展了很多功能。
所以很多程序要求用gmake。
去下载一个gmake吧。