1.yum使用:
Linux软件安装分为三种:
1.源代码安装
2.rpm安装—Linux安装包
3.yum安装(最长用到的安装)—解决安装源,安装版本,安装依赖
软件包:
关于rzsz:
用于windows机器和远端机器Linux机器通过xshell
传输文件
sz:
安装完成之后通过拖拽的方式将文件床上去
查看软件包:
如何安装软件:
初选“compelet”字样,说明安装成功。
如何卸载软件:
2.vim使用
命令模式,插入模式,末行模式。
命令模式:
gg:定位到光标的最开始行
Shift+g:定义光标到最结尾行
n+shift+g:
定位光标到任意行:
Shift+$:
定位光标到当前行结尾:
Shift+^定义光标到当前行开始:
h j k l:左下上右
(n)yy:复制光标所在行
(n)dd剪切、删除
(n)p粘贴到光标所在的下一行
u:撤销
ctrl+r:撤销之前的撤销
shift+~:大小写转换:
(n)r:对光标字符之后的所有字符进行批量化替换
shfit+r:替换模式(第四种模式)对内容进行调节:
(n)x:对光标字符之后的进行删除
多文件操作:
底行中,vs打开多个文件编辑窗口:
Ctrl ww:窗口光标切换
光标在哪个窗口里面,就对哪个窗口进行操作。
wq:在退出时还可以保存文件。
解决sudo用不了的问题:
首先进入root帐号输入:
进入后找到:
选择自己的账户进行添加,上面的msb就是。
gcc,g++的使用:
1.预处理:
进行的工作:
1.去注释
2.头文件展开
3.条件编译
4.宏替换
要想编译代码只进行预处理:
结果如下:
编译:
生成汇编代码:
输入指令:
结果:
汇编:
生成机器可识别代码(二进制文件):
对应的指令:
对应的是二进制文件,我们看不懂
可重定位的目标文件,不可以独立执行,虽然已经是二进制了,需要经过链接才能执行
链接:
.o文件和库是如何链接的,
1.动态链接
动态库不能缺失,一旦对应的动态库缺失,影响的不止一个程序,可能更多程序都无法正常运行。
2.静态链接
在使用静态库进行静态链接的时候,会将自己的方法拷贝到目标程序中,该程序以后不在依赖静态库。
在liunx系统中,编译形成可执行程序,默认采用的是动态链接,提供动态库
如果要按照静态库的链接方式,进行形成可执行程序,需要添加-static选项
可以看到静态文件要比动态文件大的多:
所以编译器默认选择动态库。
动态库和静态库的比较:
debug和release:
make/makefile:
为了简化运行代码:
首先需要自己创建一个makefile文件:
在里面写去想要执行的指令:
之后想要运行代码就不用再敲复杂的指令了:
直接make运行代码:
make clean运行删除运行结果: