linux Command

【gcc 编译 】

  如 demo 目录下 有一个 abc.c 需要编译,则:gcc ./abc.c -o abc

执行: ./abc

说明: ./ 表示当前目录下

【关于 make】

  (1) 一个C程序需要 编译,链接。在编译的时候,将产生 .o 目标文件,链接时将产生 可执行文件。

 (2)  如果一个程序有多个源文件要编译,链接,手工去逐个去做将会麻烦很大。make命令就帮我们完成这项工作。

(3)make 命令的执行时依赖于一个 makefile文件(文件名就是 Makefile或者 makefile,无后缀名)。

(4)如何写makefile文件? 举例如下:有三个文件,一个叫 abc.c ,含有 main的主文件;一个叫add.c文件,它有一个add方法;另外一个叫 add.h头文件,对add.c进行声明的一个文件。

abc.c:

#include "stdio.h"
#include "add.h"

int main()
{
     printf("hello unix c !\n");
     printf("sum is :%d\n" , add(2,3));
     return 0;

}
 

 

add.c:

int add(int a,int b)
{
        return a + b;
}
 

add.h

extern int add(int a, int b);

 现在要对三个文件进行编译,链接,一步完成,这时,就要书写 makefile 文件了

test:abc.o add.o
#pay attention : the tab before gcc Command ,hehehehe 
         gcc  abc.o add.o -o test 
abc.o:abc.c add.h
        gcc -c abc.c -o abc.o
add.o:add.c add.h
        gcc -c add.c -o add.o

 对makefile文件内容,做个简单解释如下:

          第一行: 程序 test 将使用两个 目标文件 abc.o 和 add.o,注意第二行的tab分隔符,一定要!!

          第二行:将两个目标文件 链接生产为 test可执行文件

          第三、四行:解释了 abc.o如何产生

          第五、六行:解释了add.o如何产生

 

(5)执行make :在当前目录下输入“ make” ,ok ,产生 test 可执行文件, 在当前目录下执行 使用 “ ./test”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值