Ubuntu系统用gcc命令编译主程序和用Makefile方式编写主程序

(一)用gcc命令编译主程序

编写main1.c 

编写sub1.h 

 

编写sub1.c 

(1)gcc 直接编译

1.命令:gcc -c sub1.c

作用:将sub1.c程序转换为目标文件sub1.o

2.命令:gcc main1.c sub1.o -o main1

作用:编译main1.c文件为目标文件mian1.o,然后链接sub1.o目标文件生成mian1可执行文件

3.执行./main1命令,即可执行编译生成的main1程序

(二)与windows平台编程比较

 

(三)运用Makefile编译主程序

     

1.执行命令make,编译得到可执行文件main1删除编译产生的中间文件,执行命令make clean,即可删除编译过程中产生的*.o文件 

(四)总结 

在本次Ubuntu系统上用c语言编写主程序而进行的试验中,安装这个系统就花费了很多时间。先前的版本用不上,不得不重新安装,还好结果是好的。在此基础上我按照要求使用了gcc直接编译和Makefile方式编译生成可执行文件,也与Windows上编译作了比较。前者过程更细致,后者简单明了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 编译、执行简单C程序 假设有一个名为`hello.c`的简单C程序,代码如下: ```c #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } ``` 在终端中输入以下命令进行编译和执行: ``` gcc hello.c -o hello ./hello ``` 其中,`gcc`是编译器,`-o`是指定输出文件名的参数,`./hello`是执行生成的可执行文件。 2. 编译、执行多文档C程序 假设有两个C源文件`main.c`和`func.c`,`main.c`调用了`func.c`中的函数。代码如下: `main.c` ```c #include <stdio.h> #include "func.h" int main() { int a = 1, b = 2; printf("a + b = %d\n", add(a, b)); return 0; } ``` `func.c` ```c #include "func.h" int add(int a, int b) { return a + b; } ``` `func.h` ```c #ifndef FUNC_H_ #define FUNC_H_ int add(int a, int b); #endif /* FUNC_H_ */ ``` 在终端中输入以下命令进行编译和执行: ``` gcc main.c func.c -o app ./app ``` 其中,`gcc`后跟的是所有需要编译的源文件,`-o`指定输出文件名为`app`,`./app`是执行生成的可执行文件。 3. 编写makefile文件用make工具编译C程序 假设有一个名为`app`的C程序,包含了`main.c`和`func.c`两个源文件,并在`func.c`中定义了一个函数。我们可以使用`make`工具来编译程序。 首先,我们需要编写一个名为`makefile`的文件,内容如下: ```makefile app: main.o func.o gcc main.o func.o -o app main.o: main.c gcc -c main.c -o main.o func.o: func.c gcc -c func.c -o func.o ``` 在终端中输入以下命令进行编译和执行: ``` make ./app ``` 其中,`make`会自动根据`makefile`中的规则进行编译,生成可执行文件`app`。`./app`是执行生成的可执行文件。如果需要重新编译程序,只需要修改源文件后重新输入`make`命令即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值