您的位置:首页 > 运维架构 > Linux

Linux - 用make进行工程编译

2015-08-11 21:24 597 查看
首先建立好自己的工作目录



然后创建主函数main.cpp



接着写sinValue.h和cosValue.h函数文件





先按照传统方式进行编译运行



然后用make,先写makefile文件



将原来生成的文件删除,运行make



搞定,下面多尝试几个make的基本语法与变量。

基本的 makefile 守则是这样的:

目标(target): 目标档1 目标档2
<tab>   gcc -o 欲创建的运行档 目标档1 目标档2


在 makefile 当中的 # 代表注解;

<tab> 需要在命令行 (例如 gcc 这个编译器命令) 的第一个字节;

目标 (target) 与相依文件(就是目标档)之间需以『:』隔开。

继续上面的程序进行测试,在makefile中添加:



以新的target(clean)测试看看运行make的结果



如果想先清楚目标档再编译main这个程序的话,就可以输入【make clean main】:



可以像shell script来简化makefile:



与 bash shell script 的语法有点不太相同,变量的基本语法为:

1、变量与变量内容以『=』隔开,同时两边可以具有空格;

2、变量左边不可以有 <tab> ,例如上面范例的第一行 LIBS 左边不可以是 <tab>;

3、变量与变量内容在『=』两边不能具有『:』;

4、在习惯上,变量最好是以『大写字母』为主;

5、运用变量时,以 ${变量} 或 $(变量) 使用;

6、在该 shell 的环境变量是可以被套用的,例如提到的 CFLAGS 这个变量!

7、在命令列模式也可以给予变量。

环境变量取用的守则是这样的:

1、make 命令列后面加上的环境变量为优先;

2、makefile 里面指定的环境变量第二;

3、shell 原本具有的环境变量第三。

此外,还有一些特殊的变量需要了解的:

$@:代表目前的标的(target)

所以我也可以将 makefile 改成:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: