700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Linux下的软件包管理器(yum) 编译器(vim) 编译器(gcc/g++) 调试器(gdb)使用大汇总

Linux下的软件包管理器(yum) 编译器(vim) 编译器(gcc/g++) 调试器(gdb)使用大汇总

时间:2021-10-07 08:48:59

相关推荐

Linux下的软件包管理器(yum) 编译器(vim) 编译器(gcc/g++) 调试器(gdb)使用大汇总

目录

一.软件管理器yum

1.1 概念

1.2 查看软件包

1.3 安装软件包

1.4 卸载软件包

二.编辑器vim

2.1 概念

2.2 vim的基本操作

2.3 vim命令模式下的命令集

2.4 末行模式命令集

三.编译器gcc/g++

3.1 程序到可执行程序过程

3.2 gcc选项

四.调试器gdb

4.1 说明

4.2 使用

一.软件管理器yum

1.1 概念

在Linux下安装软件,一种办法是下载到程序的源代码,并且进行编译,得到可执行程序。但是这样太麻烦了,于是有些人将一些常用的软件提前编译好,做出软件包凡在一个服务器上,通过软件包管理器就可以方便的获取到编译好的软件包们直接安装。

yum就是Linux下常用的软件包管理器。我们可以通过yum下载某些软件。相当于手机里的应用商店。

在Linux下下载软件的方式由3种

下载源代码进行安装rpm包安装通过yum安装

注意:关于yum的所有操作必须保证主机的网络通常。可以使用ping指令验证。

1.2 查看软件包

通过yum list命令可以查看yum种的所有软件包。

但是可能yum种软件包的数目过多,你需要特定的一个软件时,可以配合管道和grep指令来查找。

说明:

软件包名称:主版本号,次版本号,源程序发行号-软件包发行号。主机平台,cpu架构。"x86_64":表示64位系统的安装包,"i686"表示32位系统安装包,选择包时要和系统匹配。"el7"表示操作系统发现版的版本。"el7"表示centos7/reshat7。最后一列表示软件源名称。类似于"小米应用商店"的概念。

1.3 安装软件包

命令:

sudo yum install 软件包名 //需要提高权限

中间还会需要确认是否安装。知道出现complete说明安装成功。

1.4 卸载软件包

命令:

sudo yum rermove 软件包名

二.编辑器vim

说明:

在windows下我们编写软件的工具时一个集成开发工具。可以用来编写代码,编译代码,调试代码。

在Linux下,每个部分是独立的,用vim来编写代码,用gcc/g++来编译代码,用gdb来调试代码。

2.1 概念

vim:是一个拥有多种模式的文本编辑器。一共拥有12种模式:six BASIC modes和six ADDITIONAL modes。可以在vim的末行模式下输入help vim_modes查看。

下面主要介绍3种模式:

正常/普通/命令模式(Normal mode)

控制屏幕光标的移动,字符或者行的删除,移动复制某区段,以及且管道其它模式下。

插入模式(Insert mode)

只有在insert mode下,才可以做文字的输入,按下ESC键可以回到命令模式下。

末行模式(last line mode)

文件保存会在退出,也可以进行文件替换,找出字符,列出行号。在命令模式下,shift + :可以进入该模式。

注意:

切换模式前都必须先切换到命令模式。

在命令模式下按下shift + ;切换到末行模式,按下i,a,o可以切换到插入模式。在其它模式下,按下ESC,可以切换到命令模式。

2.2 vim的基本操作

进入vim,在系统提示符号输入vim 加 文件名称,就可以进入全屏幕编辑画面。 如:vim test.c注意:进入vim编辑画面,默认是在命令模式下。命令模式切换到插入模式 输入i:从当前光标位置插入输入a:从当前光标位置的同行下一个位置插入。输入o:从下一行开始插入命令模式切换到末行模式 输出 "shift + ;",起始就是":"其它模式切换到命令模式 输入ESCvim退出 末行模式下输入q!:不保存,强制退出,w:保存文件,但是不退出,wq:保存并退出。

2.3 vim命令模式下的命令集

移动光标 vim可以通过上下左右来移动光标,也可以通过h,j,k,i来进行左,下,右,上移动。按G:移动到文章最后按gg:移动到文件开始按$:移动到行尾按^:移动到行头按b:移动到当前单词开头按e:移动到当前单词结尾按w:移动到下一个单词开头数字n+l:移动到当前光标的后面第n字符删除文字 x:删除光标位置字符数字n+x:删除光标后面n个字符。不包括当前光标X:删除前面一个字符数字n+X:删除前面n个字符dd:删除当前行数字n+dd:从光标开始删除后面n行

注意:dd更像是Windows下的剪切,可以使用p粘贴出来,下面介绍

复制文字 yy:复制光标所在行到缓冲区数字n+yy:复制从光标开始后面n行到缓冲区p:将缓冲区的字符刷新到光标所在位置。相当于window下的粘贴。替换 ~:大小写转化,字符大写转为小写,小写转为大写。r:替换光标所在字符。先按下r,在按需要替换的字符。R:替换光标所在之处的字符,直到按下ESC结束。撤销上一次操作 u:回到上一次操作前。比u:误操作,删除字符,按下u可以会回到上一次操作。ctrl + r:撤销恢复。避免误操作按下u。

相当于Windows下的回退上一次操作,和前进到下一次的操作。

跳到指定行 ctrl+g:列出光标所在行数字n+G:将光标移动到第n行

2.4 末行模式命令集

列出行号 输入set nu:会在文件的每一行前面列出行号跳到文件某一行 直接输入数字,再回车查找字符 /+关键字:会跳到关键字处,如果字符不是你想要的,可以一直按n?+关键字:会跳到关键字处,如果字符不是你想要的,可以一直按n

区别:"/"按n向上找,"?"向下找

替换 %/A/Y/g:将字符串A,替换成字符串Y。多文件 vs+文件名:打开另外一个文件ctrl + ww:光标切换到另外一个文件。

三.编译器gcc/g++

进行程序的编译。

3.1 程序到可执行程序过程

预处理:去注释,宏替换,条件编译,头文件展开,形成.i文件编译:检测语法错误,形成汇编语言。.s文件汇编:形成机器语言,二进程代码。.o文件连接:将程序和使用到的系统库进行链接,形成.exe文件

3.2 gcc选项

-E:激活预处理,不形成新文件,你需要将其重定向到一个新文件里。

gcc test.c -E >>test.i

-S:编译到汇编语言-c:编译到目标文件-o:文件输出到文件static:对生成文件采用静态链接-g:生成调试信息,翻遍gdb调试用-shared:生成动态库时需要使用-O0-O1-O2-O3:编译器优化程度4个级别。O0表示没有优化,O1为缺省,O3优化程度最高

四.调试器gdb

4.1 说明

程序发布方式右两种:debug模式和release模式gcc/g++默认编译出来的时release模式要使用gdb调试,必须再生成可执行程序前加上-g,形成调试信息。

4.2 使用

直接gdb+可执行程序名,进入调试。

list/l 行号:显示源代码,默认从头开始显示10行list/l 函数名:显示函数的代码r/run:运行程序n/next:当条执行s/step:进入函数break/b 行号:在某行设置断点info break:显示断点信息finish:执行到当前函数的返回处(return),等待下一次命令print/p:打印表达式的值,通过表达式的值可以修改变量的值会在调用函数。p 变量:打印变量值。set var:修改变量值 比如:set var i = 100continue:从当前位置连续,非单步运行命令delete breakpoint:删除所有断点delete breakpoint n:删除序号为n的断电disable breakpoint:禁用断点enable breakpoint:启用断点display 变量名:跟踪查看一个变量,每次停下来都会显示变量值。相当于监视窗口undisplay:取消所有变量的跟踪。info locals:查看当前栈帧局部变量值breaktrace:查看各级函数调用及参数until 行号n:跳到n行quit:退出gdb

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。