- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1基础演讲解读
LINUX基础入门知识讲解
电子科学与技术 14电子2班
讲解人:石润发
目录页
GCC编译器
GCC背景
GCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器。它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分。GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,GCC同样适用于微软的Windows。[2]??GCC是自由软件过程发展中的著名例子,由自由软件基金会以GPL协议发布。
GCC 原名为 GNU C 语言编译器(GNU C Compiler),因为它原本只能处理?C语言。GCC 很快地扩展,变得可处理C++。后来又扩展能够支持更多编程语言,如Fortran、Pascal、Objective-C、Java、Ada、Go以及各类处理器架构上的汇编语言等,所以改名GNU编译器套件(GNU Compiler Collection)。
GCC所对应后缀名解释
GCC所对应后缀名解释
GCC流程
Gcc的编译流程分为了4个步骤,分别为:
· 预处理(Pre-Processing);
· 编译(Compiling);
· 汇编(Assembling);
· 链接(Linking)。
GCC ---常用选项
什么是GNU C (gcc)呢?
一句话--GCC 是一个可移植的编译器
1、GCC 功能强大,可以跨平台-----即 可以在不同的微控制器、DSP、64位CPU,linux,window跨系统 等等
2、GCC 支持 多种语言 比如 C、C++、Scheme、JAVA、gcl。。。
下面通过一个简单例子
在这里输入您的详细研究信息,在这里输入您的详细研究信息,在这里输入您的详细研究信息,在这里输入您的详细研究信息,在这里输入您的详细研究信息,在这里入您的详细研究信息。
LINUX 基本命令
1、 ls -- 列出当前目录
2、 cd -- 进入 目录
3、mkdir -- 建立文件夹
4、 rm -- 删除文件
5、 vi -- 进入vi编译模式
6、gcc -- 编译生存可执行文件
建议: 慕课网学习 linux 的基础编程 的视频,半天 即可轻松熟练基本命令
GCC的强大功能
1、警告选项 作用?:
gcc –wall text.c
2、调试选项 作用?: 如果程序崩溃了,可以通过调试信息查找
gcc –g text.c 可以追踪到错误时的机器码指令对应到程序
3、优化选项 作用?: 优化程序,减少编译时间
gcc –O text.c 尤其是大项目
-O 一级优化
-O2 二级优化
-O3 三级优化
优化图示
从这个例子的结果中可看出,相对于用“-O0”编译的未优化代码而言,提高优化级别,从“-O1”到“-O2”到“-O3”,可以显著的提升速度。
优化程度越大。,风险越大
GNU-Makefile介绍
什么是Makefile
Makefile是一个工具,主要被用来进行工程编译和程序链接。
在讲述这个Makefile之前,还是让我们先来粗略地看一看Makefile的规则。
? ? ? ????target... : prerequisites ...
? ? ? ? ? command
简单演示下
研究结论
接下来,为了进一步简化编辑和维护Makefile,make允许在Makefile中创建和使用变量。变量是在Makefile中定义的名字,用来代替一个文本字符串,该文本字符串称为该变量的值。
在具体要求下,这些值可以代替目标体、依赖文件、命令以及makefile文件中其他部分。在Makefile中的变量定义有两种方式:一种是递归展开方式,另一种是简单方式。
MAKEFILE 变量
递归展开方式定义的变量是在引用在该变量时进行替换的,即如果该变量包含了对其他变量的应用,则在引用该变量时一次性将内嵌的变量全部展开,虽然这种类型的变量能够很好地完成用户的指令,但是它也有严重的缺点,如不能在变量后追加内容(因为语句:CFLAGS = $(CFLAGS) -O 在变量扩展过程中可能导致无穷循环)。
为了避免上述问题,简单扩展型变量的值在定义处展开,并且只展开一次,因此它不包含任何对其他变量的引用,从而消除变量的嵌套引用。
递归展开方式的定义格式为:VAR=var。
简单扩展方式的定义格式为:VAR:=var。
Make中的
您可能关注的文档
- 1G通信到5G的区别。解读.ppt
- 1S7-200PLC认识及应用解读.ppt
- 夕阳真美课件精要.ppt
- 外加脉冲电流阴极保护论文最终版精要.doc
- 1“中山鸟卷”原装试题(打印排版稿,纸张16开)解读.doc
- 携手转型、赢在大堂讲述.ppt
- 摄影专业基础理论考试范围讲述.doc
- 外协加工件技术标准(肖特基二极管)精要.doc
- 19《精彩极了和糟糕透了》李瑞瑞解读.ppt
- 携手抗艾重在预防讲述.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)