- 1、本文档共71页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux编程基础_工具.ppt
第9章 Linux程序设计基础 本章学习目标 通过对本章的学习,读者应该掌握以下主要内容: ? Linux编程风格 ? Linux下IDE的使用 ? Linux下使用GNU cc开发应用程序 ? Linux程序的调试 ? Linux下使用RCS/CVS来管理源程序 ? Linux下软件打包 9.1 概述 9.1.1 Linux编程 Linux软件开发一直在Internet环境下讲行。这个环境是全球性的,编程人员来自世界各地。只要能够访问Web站点,就可以启动一个以Linux为基础的软件项目。Linux开发工作经常是在Linux用户决定共同完成一个项目时开始的。当开发工作完成后,该软件就被放到Internet站点上,任何用户都可以访问和下载它。由于这个活跃的开发环境,新的以Linux为基础的软件功能日益强大,而且呈现爆炸式的增长态势。 大多数Linux软件是经过自由软件基金会(Free Software Foundation)提供的GNU(GNU 即 GNU’s not UNIX)公开认证授权的,因而通常被称作GNU软件。GNU软件免费提供给用户使用,并被证明是非常可靠和高效的。许多流行的Linux实用程序如C编译器、shell和编辑器都是GNU软件应用程序。 RPM可以让用户直接以binary方式安装软件包,并且可替用户查询是否已经安装了有关的库文件;在用RPM删除程序时,会询问用户是否要删除有关的程序。如果使用RPM来升级软件,RPM会保留原先的配置文件,这样用户就不用重新配置新的软件了。RPM保留一个数据库,这个数据库中包含了所有的软件包的资料,通过这个数据库,用户可以进行软件包的查询。RPM虽然是为Linux而设计的,但是已经移值到SunOS、Solaris、AIX、Irix等其它UNIX系统上了。RPM遵循GPL版权协议,用户可以在符合GPL协议的条件下自由使用及传播RPM。 RPM设计的目的有下面几点: 方便的升级功能:RPM让用户不用重新安装整个系统就可以对单个软件包进行升级,当一个新的发行版本问世的时侯,用户也不用重新安装,RPM会替用户全面、自动、智能地升级系统,并且保留用户原先的配置文件,这就大大减少了用户维护系统的工作量。 强大的查询功能:用户可以针对整个软件包的数据,或是某些特定的文件进行查询,也可以轻松地查出其个文件是属于哪个软件包,或是从哪里来的。RPM文件本身是经过压缩的,但用户还是可以很容易地快速查询每个软件包的内容,因为在RPM软件包里,已经加入一些特殊的binary header,记录了全部查询时所需要的数据,这一点大大加快了查询速度。 4.使用优化选项 当用gcc编译C代码时,它会试着用最少的时间完成编译并且使编译后的代码易于调试. 易于调试意味着编译后的代码与源代码有同样的执行次序,编译后的代码没有经过优化。有很多选项可用于告诉gcc,在耗费更多编译时间和牺牲易调试性的基础上,产生更小更快的可执行文件。这些选项中最典型的是-O和-O2选项。 -O选项告诉gcc对源代码进行基本优化。这些优化在大多数情况下都会使程序执行的更快。 -O2选项告诉gcc产生尽可能小和尽可能快的代码。-O2选项将使编译的速度比使用-O 时慢。但通常产生的代码执行速度会更快。 5.使用调试和剖析选项 GCC 支持数种调试和剖析选项。在这些选项里最常用的是-g和-pg选项。 -g选项告诉gcc产生能被GNU调试器使用的调试信息以便调试程序。gcc 提供了一个很多其他C编译器里没有的特性,在gcc里能使-g和-O 产生优化代码 连用。这一点非常有用,因为能在与最终产品尽可能相近的情况下调试代码。同时使用这两个选项时必须清楚所写的某些代码已经在优化时被gcc作了改动。 -pg选项告诉gcc在程序里加入额外的代码,执行时,产生gprof用的剖析信息以显示程序的耗时情况。 9.3.2使用GNU make编辑makefile 1.准备工作 要使用make,必须编写一个叫做Makefile的文件,这个文件描述了软件包中文件之间的关系,提供更新每个文件的命令。一般在一个软件包里,通常是可执行文件靠目标文件来更新,目标文件靠编译源文件来更新。 Makefile写好之后,每次改变了某些源文件,只要执行make命令: # make 所有必要的重新编译将执行。Make程序利用makefile中的数据和每个文件的最后修改时间来确定那个文件需要更新,对于需要更新的文件,make程序执行makefile数据中定义的命令来更新。 2.makefile文件的基本结构 GNU make的主要功能是读进一个文本文件makefile并根据makefile的内容执行一系列的工作。makefile的
您可能关注的文档
- (教科版)六年级科学下册课件污水和污水处理.ppt
- (陈亚萍)手势活化小学英语课堂教学.doc
- B型超声检查.ppt
- EE白三烯调节剂在哮喘治疗中的若干进展.ppt
- HlA多态性的遗传基础.ppt
- IP_QoS原理培训.ppt
- IP数据网技术交流资料.doc
- JavaScript编程基础.doc
- JAVA数据库的设计.ppt
- Linux基础教程Shell脚本编程.ppt
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
文档评论(0)