- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
精通gc郑c编译器
精 通 GCC 编译器 content GCC 概论 GCC 深入探索 GCC 的编译选项 GCC 的应用技巧 01. GCC 是何物? Linux系统下的gcc(GNU C Compiler)是GNU推出的功能强大、性能 优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体 平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器 相比平均效率要高20%~30%。 gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连 接成可执行文件,如果没有给出可执行文件的名字,gcc将生成一个名 为a.out的文件。在Linux系统中,可执行文件没有统一的后缀,系统从 文件的属性来区分可执行文件和不可执行文件。而gcc则通过后缀来区 别输入文件的类别,下面我们来介绍gcc所遵循的部分约定规则。 DEMO GCC的几个版本 请问GCC 和cc有啥区别? 怎样在linux下 查看GCC的版本 信息? 查看版本信息 安装路径: 相关文件类型: c 为后缀的文件,C语言源代码文件; .a 为后缀的文件,是由目标文件构成的档案库文件; .C,.cc或.cxx 为后缀的文件,是C++源代码文件; .h 为后缀的文件,是程序所包含的头文件; .i 为后缀的文件,是已经预处理过的C源代码文件; .ii 为后缀的文件,是已经预处理过的C++源代码文件; .m 为后缀的文件,是Objective-C源代码文件; .o 为后缀的文件,是编译后的目标文件; .s 为后缀的文件,是汇编语言源代码文件; .S 为后缀的文件,是经过预编译的汇编语言源代码文件。 gcc编译的4个过程: 预处理(也称预编译,Preprocessing): 命令gcc首先调用cpp进行预处理,在预处理过程中,对源代码文件中的文件包含(include)、预编译语句(如宏定义define等)进行分析。 编译(Compilation): 接着调用cc1进行编译,这个阶段根据输入文件生成以.o为后缀的目标文件。 汇编(Assembly): 汇编过程是针对汇编语言的步骤,调用as进行工作。 连接(Linking): 当所有的目标文件都生成之后,gcc就调用 ld来完成最后的关键性工作,这个阶段就是连接 参考:《深入透析》 演示: DEMO 基本的用法是∶gcc [options] [filenames] 1、没有任何选项:gcc helloworld.c 结果会在和helloworld.c相同的目录下产生一个a.out的可执行文档。 2、-o选项,指定输出文档名:gcc -o helloworld helloworld.c -o意思是Output即需要指定输出的可执行文档的名称。这里的名称为helloworld。 3、-c选项,只编译,不汇编连接:gcc -c helloworld.c -c意思就是Compile,产生一个叫helloworld.o的目标文档 4、-S选项,产生汇编源文档:gcc -S helloworld.c -S意思就是aSsemble,产生一个叫helloworld.s的汇编源文档 5、-E选项,预处理C源文档:gcc -E helloworld.c -E意思就是prEprocess。输出不是送到一个文档而是标准输出。当然能够对他进行重定向: gcc -E helloworld.c helloworld.txt 优化选项 -O选项,基本优化:gcc -O helloworld.c -O意思就是Optimize,产生一个经过优化的叫作a.out的可执行文档。也能够同时使用-o选项,以指定输出文档名。如: gcc -O -o test helloworld.c 即会产生一个叫test的经过优化的可执行文档。 -O2选项,最大优化:gcc -O2 helloworld.c 产生一个经过最大优化的叫作a.out的可执行文档。 调试选项 -g选项,产生供gdb调试用的可执行文档: gcc -g helloworld.c 产生一个叫作a.out的可执行文档,大小明显比只用-o选项编译汇编连接后的文档大。 -pg选项,产生供gprof剖析用的可执行文档: gcc -pg helloworld.c 产生一个叫作a.out的执行文档,大小明显比用-g选项后产生的文档还大。 02. GCC快速入门 第一个实例 hello! DEMO GCC 常用编译开关 -w 禁止输出警告消息 -Werror 将所有警告转换为错误 -Wall 显示所有的警告消息 -v 显示编译程序的当前版本号 -static 连接器将忽略动态连接库,
您可能关注的文档
- 解剖内脏神经系统北水京大学医学部解剖学教研室.ppt
- 解决问题百的方法.ppt
- 解剖学公开课说内分泌.ppt
- 解剖脑神经北京大学基础申医学院解剖学系.ppt
- 解剖标本考及试辅导本科新.ppt
- 介入性超声兴的临床.ppt
- 解稍复杂的方程小学数学五达年级上册第四单元.ppt
- 解剖感觉器铭濮鸣亮.ppt
- 解剖学西班牙语(中医专近业解剖).ppt
- 解开营销乎相对论austin.ppt
- 2025年秋季湖南长沙雨花区枫树山中航城小学合同制教师招聘笔试模拟试题及答案解析.docx
- 2025年马鞍山和县县直机关选调公务员4人笔试模拟试题及答案解析.docx
- 2025中国社会科学院日本研究所编制外人员招聘1人笔试模拟试题及答案解析.docx
- 2025年泉州招聘惠安县司法局司法协理员6人笔试参考题库附答案解析.docx
- 2025年上半年四川甘孜州雅江县考试聘用员额制人员34人笔试模拟试题及答案解析.docx
- 2025年河北廊坊固安县公开选聘中学聘用制合同教师134名笔试参考题库附答案解析.docx
- 2025中国铁路文工团有限公司招聘普通高校毕业生2人(二)笔试备考试题及答案解析.docx
- 2025中国社会科学院文学研究所招聘笔试模拟试题及答案解析.docx
- 2024年文化教育职业技能鉴定练习题含答案详解【轻巧夺冠】.docx
- 2024反射疗法师3级高频难、易错点题附参考答案详解【完整版】.docx
最近下载
- 小学数学六年级下册人教版小升初专项特训:图形与几何.pdf VIP
- 厂区绿化施工方案.pdf VIP
- 最新版美标NFPA14-2024 《消防立管及软管系统安装标准》中文版及条文浅析.pdf
- 现代多媒体会议室智能控制系统方案.pdf VIP
- TZS 0680—2025《医疗机构实验室生物安全管理组织架构规范》(水印版).pdf VIP
- (高清版)DG∕TJ 08-55-2019 城市居住地区和居住区公共服务设施设置标准.pdf VIP
- 神经科的临床思维和定性诊断.pptx VIP
- 轴流风机的原理与运行.doc VIP
- 昆山提招数学模拟卷(八)及参考答案.pdf VIP
- 文心一言的使用指南.pdf VIP
文档评论(0)