书签 分享 收藏 举报 版权申诉 / 24
上传文档赚钱

类型Linux系统程序设计教程-第2章Linux系统开发环境.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3372535
  • 上传时间:2022-08-24
  • 格式:PPT
  • 页数:24
  • 大小:238KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《Linux系统程序设计教程-第2章Linux系统开发环境.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Linux 系统 程序设计 教程 开发 环境
    资源描述:

    1、Linux程序设计教程第2章Linux系统开发环境2第2章Linux下项目开发环境n2.1 Vi编辑器n2.2 GCC编译器n2.3 Makefile文件的使用n2.4 GDB调试器n2.5 库n2.6 案例2:简易学生成绩计算32.1 Vi编辑器nvi的工作模式 nvi的基本用法nvi的高级用法42.1 Vi编辑器nvi三种模式插入模式:键盘按键被当作文本命令模式:键盘按键被当作命令底行模式:输入“:”“?”“/”后进入,完成某些功能。52.1 Vi编辑器nvi的基本用法启动n命令提示符后输入“vi 文件名”以下所说的vi的用法都是在命令模式下,所以在插入模式时要先Esc退出编辑状态。保存不

    2、退出 n:w另存为 n:w 新文件名退出n:wq 保存并退出n:q!不保存退出62.1 Vi编辑器nvi的高级用法文本操作n复制 yy yw nyy nywn剪切 dd dw ndd ndwn粘贴 p P72.1 Vi编辑器nvi的高级用法行数n跳转到某行 数字G n底行模式,set nu 显示行号 set nonu取消显示行号撤销 nu重做 n.(句点)搜索 n/?82.2 GCC编译器nGCC编译器介绍功能强大的编译器,源代码到可执行文件有4个步骤:处理头文件和预编译语句,生成.i文件 生成.s汇编代码文件 将编译阶段生成的.s文件转换成目标文件.o 将目标文件和所用的库函数连接到可执行文

    3、件中适当位置,生成可执行文件源代码.ccppcc1asld预处理编译汇编连接92.2 GCC编译器nGCC的基本用法基本格式:pgcc 选项 源文件名,如ex1.c生成可执行文件pgcc -o 可执行文件名 源文件名p或gcc 源文件名 -o 可执行文件名要用GDB工具调试p最后加上-g选项显示附加的警告信息p最后加上-Wall选项102.3 Makefile文件的使用nmake对于大型的开发项目来说,可能包括很多源文件,使用make和makefile文件可以清晰地理顺各个源文件之间的关系。make主要是通过make命令调用makefile文件,通过makefile文件描述源程序之间的相互依赖

    4、关系,并自动维护编译工作。n调用格式“make 目标”,查找makefile文件中指定的目标一般都省略目标直接用make来查找makefile文件中的第一个目标。112.3 Makefile文件的使用nmakefile文件内容显式规则隐含规则变量定义指示符注释:#后为注释,行注释122.3 Makefile文件的使用n显式规则格式:目标:依赖 tab命令 注意:tab位置按键盘上的tab键n举例p如果hello不存在则进行编译。p如果hello日期没有hello.c日期新则进行编译。hello:hello.c gcc o hello hello.c132.3 Makefile文件的使用n变量类

    5、似C语言的宏,大小写敏感(推荐大小写搭配名字)$,$.$等都是自动化变量n$目标文件n$所有依赖文件声明时赋初值,使用时变量名前加$,最好用()将名字括起。如:OBJ=test.o fun1.o fun2.otest:$(OBJ)gcc o$142.3 Makefile文件的使用nmake执行过程当前目录下按照GNUmakefile、makefile、Makefile的顺序查找makefile文件查找文件中的第一个目标文件如edit。若edit不存在,edit后依赖的文件都存在,并且edit修改时间比依赖文件的时间早,则会执行命令。若edit依赖的.o文件不存在,则在当前文件中查找目标为依赖文

    6、件的规则,生成.o文件。通常clean伪目标是用来清除中间文件的,而不是要生成clean文件。一般的makefile文件都加入clean。152.4 GDB调试器n错误分类编译错误:gcc时出现错误p根据错误提示找到错误,从第一个错误开始找。p到网上搜索错误提示p总结编译错误的解决方法运行错误:gcc正确,运行时出现错误p调试器:GDBp打印调试p在程序适当位置加printf提示语句(记得printf中加n)p在调用函数后根据函数返回值结合perror查找错误162.4 GDB调试器nGDB工具GNU的调试器(debugger),字符模式。n设置断点n监视变量值n单步执行n修改变量的值172.

    7、5 库n库的概念库函数,由系统提供的,供程序员开发时调用的,完成特定功能的函数。如printf等,一般是.o目标代码。p便于编程p隐藏细节,降低开发难度和开发周期p商业软件,保护知识产权存放函数的文件就像存放函数的仓库,如Glibc库,提供了系统调用和C库的基本函数。Linux下库的形式:静态库、共享库。182.5 库n静态库p一般以.a结尾,libtest.ap编译时:库函数被合并在可执行文件中p执行时:提供可执行文件即可p可执行文件会变大,适合于小程序调用n共享库p一般以.so或.so.x结尾,x代表版本,如libtest.so.1p编译时:库文件不被合并入可执行文件p执行时:提供可执行文

    8、件和库文件才能执行p可执行文件会比较小,并且几个可执行文件可以共享库,适合于大型项目。192.5 库n静态库的创建与使用创建pgcc -c libhello.cp生成目标文件libhello.opar rc libhello.a libhello.op生成静态库libhello.a使用p在usehello.c中调用库函数print_hellopgcc -o usehello_static usehello.c libhello.ap生成的可执行文件usehello_static,可以直接运行。202.5 库n共享库的创建与使用创建ngcc fPIC -c libhello.c生成目标文件lib

    9、hello.ongcc -shared -o libhello.so libhello.o生成共享库libhello.so使用n共享库默认搜索路径是/usr/lib或/lib,拷贝过去 cp libhello.so /usr/libn使用动态链接库gcc-o usehello_dynamic usehello.c lhellon或者不拷贝直接使用以下命令编译gcc-o usehello_dynamic usehello.c L ./lhello212.5 库n共享库的创建与使用创建ngcc fPIC -c libhello.c生成目标文件libhello.ongcc -shared -o li

    10、bhello.so libhello.o生成共享库libhello.so使用n共享库默认搜索路径是/usr/lib或/lib,拷贝过去 cp libhello.so /usr/libn使用动态链接库gcc-o usehello_dynamic usehello.c lhellon或者不拷贝直接使用以下命令编译gcc-o usehello_dynamic usehello.c L ./lhello222.6案例2:简易学生成绩计算n分析与设计n本项目完成一个简易的学生成绩计算功能:从键盘输入N个学生的姓名,年龄,数学成绩,语文成绩四项信息,输入完N个学生信息后,计算各个学生的总成绩和平均成绩,计算完毕后输出每个学生的姓名、年龄、数学成绩、语文成绩、总成绩、平均成绩。要求将输入、计算、输出三个过程分别使用独立函数实现,三个函数分别保存在三个不同的源文件中。232.6案例2:简易学生成绩计算n见教材。谢谢!

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:Linux系统程序设计教程-第2章Linux系统开发环境.ppt
    链接地址:https://www.163wenku.com/p-3372535.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库