一.不同环境下C语言的编译

Ubuntu系统下C语言的编译及makefile的应用

一.不同环境下C语言的编译

Ubuntu 20.04下

1.主程序main1.c

由vim编写

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-91qjjjNb-1662103341756)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902114431482.png)]

2.程序sub1.c

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-smstyPcd-1662103341759)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902130514372.png)]

3.用gcc编译
将sub1.c编译为sub1.o

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ncdoOavj-1662103341760)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902130718123.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GNozBn1K-1662103341761)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902130923818.png)]

4.运行mian1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-piCe0kvn-1662103341761)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902114734072.png)]

windows10环境下

用QT进行编写

1.主程序main:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AftK8jU5-1662103341762)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902123536815.png)]

2.子程序sub1:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0wy5KMJg-1662103341762)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902150549572.png)]

3.头文件sub1.h:

在这里插入图片描述

3.运行:

直接点击运行按钮,QT自动生成打印结果。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AB5WCV3E-1662103341763)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902123648197.png)]

二.Makefile方式进行

make命令执行时,需要一个 makefile 文件,以告诉make命令需要怎么样的去编译和链接程序。

1.Makefile文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wjn2Vm56-1662103341763)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902150649859.png)]

2.使用Makefile编译main1程序

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dbD8Kj9U-1662103341764)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902151051187.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RjqqBSae-1662103341764)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902151307905.png)]

3.删除编译产生的.o文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nqkNndt4-1662103341765)(C:\Users\DELL\AppData\Roaming\Typora\typora-user-images\image-20220902151231473.png)]

三.总结

通过这次实验我认识到了C语言编程在Linux上使用gcc编译与windows上的IDE编译有很大的不同,需要我们对编译的每一个步骤有足够的了解,不像之前那样简单方便的生成可执行文件。能使我们对c语言的整体有更深刻的了解
不同,需要我们对编译的每一个步骤有足够的了解,不像之前那样简单方便的生成可执行文件。能使我们对c语言的整体有更深刻的了解

参考连接:Ubuntu系统使用gcc和Makefile编译C程序

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值