目录
1. yuminux 软件包管理器
1)确保体系安装 yum 这个工具
2)使用yum 举行干系软件的下载
编辑
3)卸载使用yum 下载的干系软件
2.vim 编辑器的使用以及配置
1)vim 的安装
2) vim 的三种模式
3)vim 下干系指令的使用
4)对vim 举行干系的配置
3.gcc / g++ 编译器的使用
1)确保已经安装 gcc / g++ 编译器
2)文件编译的全过程
3) 头文件的简朴先容
4)库文件的简朴先容
5)动,静库的对比
1. yuminux 软件包管理器
在Windows操作体系上,大多数都是以图形化界面的方式举行的,一般都是在官网大概对应的应用
市肆举行下载,偶然候对一个指定软件的下载,还涉及到多个依赖项,需要我们用户本身手动下载
安装对应的依赖项。
对于Linux 操作体系就不一样了,都是以命令行的方式举行的(固然也是支持图形化界面),当我
们下载一个软件的时候,需要找到对应的源步伐,经过编译,才气得到可实行步伐,但是这样比较
麻烦:应该软件的下载,可能涉及到很多个依赖项,当源代码很大的时候,举行编译是比较消耗时间。
这时候我们就需要用到软件包管理器(yum):通过包管理器我们可以直接举行对应软件的安装
(软件所需要的依赖项以及源代码都已经举行了编译)。此时也不需要我们用户本身去找对应 的
依赖项,使用yum 源,直接一步到位。
可以把软件包管理器明确成一个应用市肆,把软件包明确成一个个APP,使用yum 举行指定软件
的下载就比如使用手机举行软件下载一样。
•yum 的工作原理
- yum服务器
所有要发行的rpm包都放在yum服务器上以提供别人来下载,rpm包根据kernel的版本号,cpu的版本号分别编译发布。yum服务器只要提供简朴的下载就可以了,ftp大概httpd的情势都以。yum服务器有一个最紧张的环节就是整理出每个rpm包的基本信息,包罗rpm包对应的版本号,conf文件,binary信息,以及很关键的依赖信息。在yum服务器上提供了createrepo工具,用于把rpm包的基本概要信息做成一张"清单",这张"清单""就是描述每个rpm包的spec文件中信息。
- yum client端
client每次调用yum install大概search的时候,都会去分析/etc/yum.repos.d下面所有以.repo末端的配置文件(即yum源),这些配置文件指定了yum服务器的地址。yum会定期去"更新"yum服务器上的rpm包"清单",然后把"清单"下载保存到yum本身的cache里面,根据/etc/yum.conf里配置(默认是在/var/cache/yum下面),每次调用yum装包的时候都会去这个cache目录下去找"清单",根据"清单"里的rpm包描述从而来确定安装包的名字,版本号,所需要的依赖包等,然后再去yum服务器下载rpm包安装。(条件是不存在rpm包的cache)
yum扩展源:
普通来讲,yum 可以明确成一个指定 的官方的网站,我们使用yum 下载的东西都是安全的, 当我们下载一些其他的东西时候,可能在yum 源上不存在大概存在一些告诫,此时在yum 扩 展源举行下载即可。
下载 yum 扩展源的指令如下:
1)确保体系安装 yum 这个工具
2)使用yum 举行干系软件的下载
语法:
使用yum下载gcc
注意:对于非 root 用户是不具备下载的权限的,此时 sudo 表现对当前的非 root 用户举行权限提
升,使之具有下载软件的权限。(可能有的即使输入 sudo 也表现权限不支持,因为此时没有对非
root 用户举行配置)。
对于非 root 权限提拔的干系操作可以查看以下的博客:sudo 举行权限提拔
3)卸载使用yum 下载的干系软件
语法:
此指令寄义:卸载安装的sl这个软件
2.vim 编辑器的使用以及配置
vim 是一种多模式的编辑器。
与vi的区别,简朴的说就是对vi的一个升级版本。
1)vim 的安装
yum install vim
2) vim 的三种模式
命令模式:控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,大概
到 末行模式。
插入模式: 只有在插入 下,才可以做笔墨输入,按「 ESC 」键可回到命令行模式。该模式是我们后 面用的最频仍 的编辑模式。 末行模式:文件保存或退出,也可以举行文件更换,找字符串,列出行号等操作。 3)vim 下干系指令的使用
3.1) 光标的移动: gg | 光标定位到文件内容的第一行的开始 | G | 光标定位到文件内容的末了一行开始 | nG | 定位光标到指定行的开始(n 是指定的一个数字 >= 1) | shift + ^ | 光标移动到当前行的开始 | shift + $ | 光标移动到当前行的竣事 | w | 光标会以单词为基本单位,举行行内跨行的移动(向右移动) | b | 光标会以单词为基本单位,举行行内跨行的移动(向左移动) |
3.2) 文件内容的复制,粘贴,删除,剪切: n yy | 以光标地点行为基准,复制光标地点 n行 的内容 | np | 粘贴 n 行内容到光标地点行的下一行 | ndd | 删除/ 剪切 n行的内容从光标地点的行开始 | 3.3) 打消以及反打消 3.4) 末行模式干系指令: w | 保存 | q | 退出 | wq 或 ZZ | 保存并退出 | q! 或 ZQ | 不保存退出 | set nu | 显示行号 | set nonu | 隐藏行号 | /搜索的文本 | 搜索 | 4)对vim 举行干系的配置
对于vim 来说,他不是一个文本编辑器嘛,在日后不可避免的使用他举行干系代码的编写,但是对
于没有经过配置过的vim 使用起来难免有点挫,比如语法高亮,代码缩进,语法提示,字体大小,
以及字体颜色设置,内容的行号计划等等。
可能对于“小白”来说,我都还不会使用vim ,就让我对vim 举行配置,这难免有点困难,别着急,
咱可以举行干系插件的下载安装。
切换到指定的一个用户(建议非root 用户):实行一下命令
- curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
复制代码 按着提示收支对应的root 暗码,即可安装成功。
VimForCpp 的卸载:
以安装有此插件的用户身份,实行以下的命令:
- bash ~/.VimForCpp/uninstall.sh
复制代码 对于新手来说,刚开始使用vim 难免有所困难,本身肯定要多多练习,熟能生巧哟~~~
3.gcc / g++ 编译器的使用
我们既然已经会使用vim 举行干系代码的编写,接下来就需要知道怎样对已经编写好的代码举行编
译,直至生产可实行的文件。
1)确保已经安装 gcc / g++ 编译器
- sudo yum install gcc / g++
复制代码 2)文件编译的全过程
2.1)预编译阶段:主要举行头文件的睁开,宏更换,去掉解释,条件编译等工作
对应的指令:
此指令的解释:告诉编译器对test.c 这个文件 实行预编译的使命,把预编译之后天生的文件内容
存放在test.i这个文件里面。
对应的实行效果见下:
2)编译阶段:举行语法分析、词法分析和语义分析,并且将代码优化后产生相应的汇编代码文件
对应的指令:
指令的解释:告诉编译器对test.i这个文件举行编译并把生产的内容放在test.s这个文件里面
3)汇编阶段:主要是把的汇编文件天生对应的目标文件
对应指令:
指令解释:告诉编译器对汇编文件test.s 实行汇编天生对应的目标文件test.o
4)链接:主要是把目标文件与对应的库文件举行链接天生对应的可实行步伐(注意:模板文件并不
是一个可实行的文件)
对应的指令:
指令的解释:对目标文件实行链接天生对应的可实行文件。
4.1)链接分为动态链接和静态链接
动态链接与静态链接的区别:
动态链接是在程序实行的时候才举行链接,并且动态链接天生对应的
文件体积相比较于静态链接形成的文件体积小。
静态链接:是在形成可实行步伐之前举行链接,因为需要把对应的库文件内容拷贝到当前文件下。
4.2) 静态库的安装:
3) 头文件的简朴先容
首先思考以下的题目:
为什么我们可以在 Windows 大概Linux 上面举行开发呢???
首先我们必选先安装对应的软件:VS2022,VScode,Pycharm 等等。
其次我们需要具备干系的头文件以及库文件。
在Linux 上面,对应的头文件默认是存放在 /usr/include 这个目录
4)库文件的简朴先容
在Linux 上面,库文件默认是存放在 / lib64这个目录下的
以下是截取的部分库文件
对于库文件又分为:静态的库文件和动态的库文件
Linux 上面的库文件在书写情势上的构成: lib(前缀)+ 库的名字 + 后缀
Linux库文件的扩展名(后缀)只有2种情势: .so(动态库) .a(静态库)
Windows 库文件的扩展名: .dll(动态库) .lib(静态库)
库其实是把每个源文件举行编译,再打包封装形成一个大的库文件,以供用户的使用。
5)动,静库的对比
动态库:共享的,比较节流资源(磁盘空间,网络空间,内存空间);所占体积较小。
静态库:比较消耗资源;不依赖库,可以独立运行。
编译器在举行链接的时候默认是优先举行动态链接的,当动态库不存在的时候,再举行静态链接
当我们指定链接就以静态链接的时候,若没有静态库,此时编译报错;静态库存在指向静态链接,
而且只举行一次静态链接。
对当前指令的深入熟悉:首先指定以静态链接的方式;同时也改变了链接的优先级,此时实行链接
的时候对所有的库文件都是以静态链接方式举行的。
查看步伐的链接方式:
结语:
以上是对Linux 体系上用到的部分工具的简朴先容,感兴趣的友友们,可以举行深入的研究与讨
论。对于这部分的知识我们需要勤于练习
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |