一、快速了解yum(简要介绍)
在Linux操作系统中,我们需要进行工具/命令/程序的安装、检查和卸载等操作,这时需要用到yum。
在Linux中安装软件的方式有:源代码安装、交叉编译、直接安装rpm包,以及使用yum或apt-get。yum是Linux系统预装的一个命令,用于搜索、下载和安装相应的软件包,就如同手机上的应用商店一样,是由厂商内置的。
总之,yum相当于Linux的应用商店!
二、快速使用yum(三大基本命令)
请注意,后两条命令需要root权限执行,或者使用sudo前缀。
三、Linux编辑器-vim的使用
vi和vim的区别简单来说,它们都是多模式编辑器,vim是vi的升级版本,不仅兼容vi的所有指令,还增加了新的特性,如语法高亮、可视化操作等。vim不仅可以在终端运行,还能在X Window、Mac OS和Windows上运行。
1、vim的基本概念
我们目前只需要掌握vim的三种模式:命令模式、插入模式和底行模式。
要回到命令模式,只需按Esc键。
2、常用模式介绍——命令模式和底行模式
命令模式:
底行模式:
保存文件:在冒号后输入字母「w」即可保存文件。
退出vim:按「q」退出,如果无法退出,可以在「q」后加「!」强制退出。
保存并退出:使用「wq」组合命令,在退出时同时保存文件。
执行命令:在不退出vim的情况下,输入「!command」执行操作。
文件替换:使用「vs filename」命令,光标所在的界面即为当前编辑的界面,底行模式同样适用。
多终端切换:使用「CTRL + ww」进行光标在多个终端间的切换。
保存并退出:使用「shift zz」或「ZZ」命令。
批量注释:
Linux编译器-gcc/g++的使用
C语言建议使用gcc编译,当然也可以使用g++;但C++语言只能使用g++编译器。
一、程序的翻译过程
1、预处理(进行宏替换)
预处理功能主要包括宏定义、文件包含、条件编译、去注释等。预处理指令是以#号开头的代码行。
头文件展开的本质是在预处理时,将头文件内容拷贝至源文件中。
实例:gcc –E hello.c –o hello.i
选项“-E”让gcc在预处理结束后停止编译过程。选项“-o”指定目标文件,“.i”文件是经过预处理的C原始程序。
2、编译(生成汇编)
在这个阶段,gcc首先检查代码的规范性和语法错误,确定代码的实际工作内容,检查无误后,将代码翻译成汇编语言。
用户可以使用“-S”选项查看,仅进行编译而不进行汇编,生成汇编代码。
实例:gcc –S hello.i –o hello.s
扩展:条件编译的用途
1:动态裁剪
通过给编译器传递不同的宏值,可以对代码进行动态裁剪。例如,一个程序有商业版和普通版,商业版有更多功能。我们不需要两份代码进行调试,只需通过传递不同的宏值在一份代码中实现动态裁剪。
2:防止头文件被重复包含
通过条件编译检查头文件是否重复包含,如果没有包含,则执行下面的代码;如果已经包含,则不执行下面的代码。
3、汇编(生成机器可识别代码)
汇编阶段将编译阶段生成的“.s”文件转成目标文件。
读者可以使用选项“-c”查看汇编代码已转化为“.o”的二进制目标代码。
实例:gcc –c hello.s –o hello.o
4、链接
在成功编译之后,进入链接阶段。
实例:gcc hello.o –o hello
函数库:
问题:我们的C程序中并没有定义“printf”函数的实现,且在预编译中包含的“stdio.h”中也只有该函数的声明,而没有定义函数的实现,那么“printf”函数的实现是在哪里?
答:系统将这些函数的实现放在了名为libc.so.6的库文件中。在没有特别指定时,gcc会在系统默认的搜索路径“/usr/lib”下查找,也就是链接到libc.so.6库函数中,从而实现“printf”函数。这就是链接的作用。
动态库和静态库的比较:
动态库(动态链接):
优点:节省资源,不会出现太多的重复代码。 缺点:对库的依赖性较强,一旦库丢失,所有使用这个库的程序都无法运行。
静态库(静态链接):
优点:不依赖库,同类型平台中都可以直接运行使用。 缺点:可执行程序体积较大,浪费资源(如磁盘、内存、网络等)。
TIP:
当gcc编译时,系统默认使用动态链接!
扩展:语言和编译器的自举过程
问:是先有语言,还是先有编译器?
答案是先有语言。
比如,先创造了C语言,然后用低级语言(汇编代码)编写一个能编译C语言的编译器,这样我们就可以编写软件了,接着用这个编译器编写一个用C语言编写的编译器。
上述过程就是语言和编译器的自举过程。
二、gcc选项
以上就是Linux中的yum和gcc/g++的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号