资源预览内容
第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
第9页 / 共33页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第23章 建立开发环境,Ubuntu的默认安装是不带有开发环境的,读者千万不要认为不写程序就不需要开发环境了。Linux不像Windows,会把所有的工具都编译成二进制代码。虽然Linux也有很多编译好的二进制代码可供下载,如Ubuntu就可以使用各种源提供的二进制代码,但很多人还是愿意自己去编译源代码以获得更大的可定制性。 对于真正想用好Linux系统的人,开发环境是不可或缺的,其中主要是C/C+的开发环境。本章将介绍在Ubuntu上如何建立开发环境,包括GCC编译器的安装、集成开发环境的建立、以及版本控制系统的使用。,23.1 构建软件编译环境,传统的Linux软件编译环境由几个软件包组成,其中包括编译器、汇编器、连接器、构建复杂软件包的工具等。Ubuntu默认没有提供整套的软件编译环境,因为许多人只是作为普通用户来使用Ubuntu。对于软件开发者来说,软件编译环境是创建软件的基础,本节将介绍如何在Ubuntu上构建软件编译环境来满足软件开发者的需要。,23.1.1 安装GCC编译器、make和其他相关软件,在Ubuntu上安装软件编译环境需要用到的软件包相当简单,只要使用Ubuntu软件包管理器安装即可。“build-essential”是Ubuntu软件编译环境必须的软件包,其中包含了GCC编译器、必要的库、make工具、最新的Linux内核头等。以下分别介绍使用命令行和新立得安装软件编译环境。 1命令行安装软件编译环境 2新立得安装软件编译环境,23.1.1 安装GCC编译器、make和其他相关软件,23.1.2 GCC编译器介绍,GCC是GNU项目的编译器组件之一,也是GNU最具有代表性的作品。GCC设计之初仅仅作为一个C语言的编译器,可是经过十多年的发展,GCC已经不仅仅能支持C语言,现在还支持Ada语言、C+语言、Java语言、Objective C语言,Pascal语言、COBOL语言,以及支持函数式编程和逻辑编程的Mercury语言等。而GCC也不再单是GNU C Compiler(GNU C语言编译器),而是GNU Compiler Collection,即GNU编译器家族,目前已经成为Linux下最重要的编译工具之一。 GCC是一个交叉平台的编译器,目前支持几乎所有主流CPU处理器平台,可以完成从C、C+、Objective C等源文件向运行在特定CPU硬件上的目标代码的转换。GCC不仅功能非常强大,结构也异常灵活,便携性与跨平台支持特性是GCC的显著优点。,23.1.2 GCC编译器介绍,23.1.3 使用GCC编译器,下面举一个简单的例子来说明GCC的编译过程。首先用vi编辑器来编辑一个简单的C程序hello.c,输入以下内容到hello.c: #include int main() printf(“Hello World!n“); return 0; ,23.1.4 make介绍,无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,都经常要用到make。利用make工具,用户可以将大型的开发项目分解成为多个更易于管理的模块。 make工具最主要且基本的功能就是通过Makefile文件来描述源程序之间的相互关系并自动维护编译工作。而Makefile文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并且要求定义源文件之间的依赖关系。Makefile文件是许多编译器,包括Windows NT下的编译器,维护编译信息的常用方法,只是在集成开发环境中,用户对Makefile文件的操作被友好的界面掩盖了。,23.2 Eclipse集成开发环境,集成开发环境俗称IDE,是一系列工具的集合。集成开发环境在一个框架下提供用户编辑器、编译器、跟踪器等,而且为用户创建和维护由许多源代码文件组成的项目提供了方便。大部分的现代集成开发环境都拥有图形化界面,本节将介绍的Eclipse便是其中非常出色的图形化集成开发环境。Eclipse是Java写的集成开发环境,原先只是为Java应用程序服务,但目前已经被扩展,可以为其他程序语言服务了。本节将详细介绍Ubuntu上Eclipse的安装和使用。,23.2.1 安装Eclipse,在Ubuntu上安装Eclipse非常方便,单击【系统】|【系统管理】|【新立得软件包管理器】命令,打开【新立得软件包管理器】窗口。寻找“eclipse”,找到后标记并安装。,23.2.2 第一次启动Eclipse,安装完成之后,用户就可以运行Eclipse了。第一次启动Eclipse,Eclipse会创建工作目录,在用户主目录下创建“.eclipse”目录。工作目录用来存放用户创建的项目,“.eclipse”目录存放Eclipse的配置信息。单击【应用程序】|【编程】|【Eclipse】命令,启动Eclipse,第一次启动会弹出【Workspace Launcher】(设置工作目录)对话框。,23.2.2 第一次启动Eclipse,23.2.3 下载并安装CDT插件,启动Eclipse之后用户就可以正常使用Eclipse了。由于之后将介绍使用Eclipse开发C程序,所以需要安装CDT插件。以下描述安装CDT插件的步骤:,23.2.3 下载并安装CDT插件,23.2.4 创建新项目,由于用户还没有创建新项目,所以Eclipse标准用户界面不会显示任何东西。以下描述在Eclipse中创建新项目的步骤:,23.2.4 创建新项目,23.2.5 创建C源代码文件,创建了新项目后就要往项目中添加源代码文件了。以下描述在Eclipse中创建C源代码文件的步骤:,23.2.6 运行程序,有了项目并添加了源代码文件后,用户就可以编译并运行程序了。以下描述在Eclipse中编译并运行程序的步骤:,23.3 文本编辑利器,vi,编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件。Linux系统为满足各种用户在各个不同的环境中编辑文本的需要,提供了一系列的文本编辑器,如ex、gedit、ed 和vi。其中ex、gedit、ed都是行编辑器,现在已很少有人使用。vi编辑器是所有Unix及Linux系统下标准的编辑器,其强大不逊色于任何最新的文本编辑器。大部分Linux服务器都不会提供桌面环境,因此,学习vi对系统管理员来说相当重要。学会vi后,相信读者会在Linux的世界里畅行无阻。 Ubuntu默认安装了vi,但笔者推荐安装vi的增强版本vim。单击【系统】|【系统管理】|【新立得软件包管理器】命令,打开【新立得软件包管理器】窗口。寻找“vim”,找到后标记并安装。,23.3 文本编辑利器,vi,23.3.1 vi的基本概念,基本上vi可以分为三种状态,分别是命令模式、插入模式和底行模式,各模式的功能区分如下: 命令行模式: 插入模式: 底行模式:,23.3.2 vi的基本操作,要掌握vi就必须了解其基本操作,vi的基本操作包括使用vi打开文件,命令模式与插入模式的切换,以及退出vi及保存文件。以下对这些基本操作做简要说明: 1使用vi打开文件 2切换至插入模式编辑文件 3切换至命令模式 4退出vi及保存文件,23.3.2 vi的基本操作,23.3.3 vi命令行模式功能键,进入vi命令行模式后,可以移动光标,删除、复制、替换文字等,以下对这些操作做简要说明: 1进入插入模式 2移动光标 3删除文字 4复制文字 5替换字符,23.3.4 vi插件,vi除了可以作为文本编辑器给普通用户使用外,经常被看作是“专门为程序员打造的文本编辑器”,因为用户可以使用vi的插件来定制vi以符合自己的需要。以下以vi文件浏览器插件NERD tree为例,介绍为vi添加插件的方法:,23.3.4 vi插件,23.4 版本控制系统,版本控制系统记录若干文件的内容变化,以便将来查阅特定版本的情况。版本控制系统不仅能对软件源代码的文本文件作版本控制管理,还能对任何类型的文件进行版本控制。 如果读者是程序员或网页设计师,可能需要保存源代码或页面布局文件的所有修订版本。采用版本控制系统是个明智的选择。有了版本控制系统,就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态。通过版本控制系统还可以比较文件的变化细节,查出谁是造成问题的罪魁祸首,谁在何时报告了某个功能缺陷等。本节将比较几种目前流行的版本控制系统并介绍最近开始流行的分布式版本控制系统Git。,23.4.1 各种版本控制系统介绍,目前主要有3种形式的版本控制系统,每种形式都有相当数量的用户在使用。以下分别介绍这3种形式的版本控制系统。 1本地版本控制系统 2集中化版本控制系统 3分布式版本控制系统,23.4.1 各种版本控制系统介绍,23.4.1 各种版本控制系统介绍,23.4.2 分布式版本控制系统Git,对于任何一个文件,在Git内都只有三种状态:已提交、已修改和已暂存。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在暂存区中,准备之后提交到本地数据库。由此可以看到Git管理项目时,文件流转的三个工作区域:Git的本地数据目录、工作目录、以及暂存区域。 基本的Git工作流程如下所示: (1)在工作目录中修改某些文件。 (2)对这些修改了的文件做快照并保存到暂存区域。 (3)提交更新,将保存在暂存区域的文件快照转储到Git目录中。,23.4.2 分布式版本控制系统Git,23.5 小结,本章介绍了Ubuntu上开发环境的搭建,包括Eclipse集成开发环境、vi文本编辑器、以及分布式版本控制系统Git的基本使用。俗话说得好,工欲善其事,必先利其器,笔者建议写程序或需要协同工作的读者熟练掌握上述介绍的开发工具。本章没有对这些工具做深入的剖析,感兴趣的读者可以自行查阅相关资料,正所谓师傅领进门,修行靠自身。,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号