Linux下GCC和Makefile实例(从GCC的编译到Makefile的引入)

本文详细介绍GCC编译器和Makefile的使用方法,包括单文件和多文件C程序的编译运行流程,以及如何利用Makefile简化多文件项目的编译工作,提高大型项目编译效率。

一、确认已经装好了GCC和Make的软件包

可以使用whereis命令查看:

如果whereis  gcc和whereis  make命令有结果,说明安装了这两个软件,可以继续往下做。

二、使用GCC编译运行一个HelloWorld程序(只涉及单个文件)

可以在任何一个目录编写C程序然后编译运行,我这个实例在自己主目录进行:

然后就进入了编写程序的界面:

按下键盘”i”进入编辑界面,然后输入程序:

按ESC(进入命令行模式),然后输入”:wq”,冒号表示开始输入命令,字母w代表保存文件,字母q代表退出编辑器:

按回车退出vim编辑器,退回到终端,以下是之后的编译运行截图:

三、使用GCC编译运行一个多文件程序(包含主程序和子程序)

这里我们要写两个C程序文件,一个文件里面写个被调函数,另外一个文件中main函数调用第一个文件的函数,如下所示:

ex_display.c的代码如下,同样的写完后ESC然后输入:wq退出:

输入如下的main函数代码:

然后保存退出,如下是编译运行过程:

 

四、使用Makefile解决多文件编译运行的问题

正如上节的红框框里面所叙述,如果一个程序涉及的文件很多的话,每个都得写出来,很是麻烦,所以Makefile就出现了,请看教程:

进入makefile的编辑界面后,输入如下内容:

然后保存退出,运行make命令:

 

五、Makefile和shell script方法的对比

有人说,我把之前的所有命令,全写到shell script里面,不就达到Makefile的效果了,没错确实最终效果是相同的,但是Makefile却有这些好处:

  • 简化编译执行的命令(并没有gcc –c的过程)
  • 一次make后,下次只会编译改动的文件,其它的文件不会再编译了

其它还有一些优点,不过这第二个优点,对于大型项目来说,好处太大了!

转载于:https://www.cnblogs.com/nowornever-L/p/6755804.html

## 数据指标说明上市公司关键核心技术专利数据是反映我国制造业技术创新能力企业自主研发实力的重要指标。通过统计母公司与子公司在关键核心技术领域的专利申请数量,可以识别出技术积累突破能力较强的上市企业本次分享的数据是上市公司2007-2024年关键核心技术专利申请数据,希望对大家有用## 一、数据介绍数据名称:上市公司关键核心技术专利数据数据年份:2007-2024年数据范围:上市公司数据格式:面板数据## 二、数据指标年份股票代码专利申请总数子公司申请数母公司申请数## 三、计算方法参考郑世林汉馨语等(2024)的研究方法,采用如下计算逻辑:首先,从中国国家知识产权局获取全部专利文本数据,并提取企业名及所属关系;其次,根据《产业基础创新发展目录》中列明的21个关键技术领域及1047项关键技术条目,将关键词与专利的五级IPC分类号进行匹配,筛选出属于关键核心技术范畴的专利;最后,按企业合并统计母公司与子公司的年度关键核心技术专利申请数## 四、参考文献[1] 郑世林, 汉馨语, 郭锡栋, 等. 国家战略科技力量与企业关键核心技术突破——来自国家省级重点实验室的证据[J]. 中国工业经济, 2024, (09): 62-80.[2] 姜中裕, 吴福象. 践行ESG理念能促进关键核心技术创新吗?[J]. 证券市场导报, 2024, (05): 37-47+79.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值