之前学习了Linux的各种操作以及权限,我们还是没有自己编写一套c/c++的程序,于是在开发工具这一章博客里面,我们将学习如何去编写属于自己的程序 ,以及了解程序编写机制
话不多说,我们开始啦(>#<)
1. 软件包管理器
1-1 什么是软件包
• 在Linux下安装软件, ⼀个通常的办法是下载到程序的源代码, 并进⾏编译, 得到可执⾏程序.
• 但是这样太⿇烦了, 于是有些⼈把⼀些常⽤的软件提前编译好, 做成软件包(可以理解成windows上
的安装程序)放在⼀个服务器上, 通过包管理器可以很⽅便的获取到这个编译好的软件包, 直接进⾏安装
• 软件包和软件包管理器, 就好⽐ "App" 和 "应⽤商店" 这样的关系.
• yum(Yellow dog Updater, Modified)是Linux下⾮常常⽤的⼀种包管理器. 主要应⽤在Fedora,
RedHat, Centos等发⾏版上
• Ubuntu:主要使⽤apt(Advanced Package Tool)作为其包管理器。apt同样提供了⾃动解决依
赖关系、下载和安装软件包的功能
1-2 Linux软件⽣态
•Linux下载软件的过程(Ubuntu、Centos、other)
下面用简图来表示

• 操作系统的好坏评估--- ⽣态问题

• 为什么会有⼈免费特定社区提供软件,还发布?还提供云服务器让你下载?
毕竟天下没有掉馅饼的事情,他们为什么要这么做呢,这样既需要他们花钱买服务器,也浪费他们的时间,那当然是他们不希望这个生态系统被取代 ,他们希望这个生态系统可以一直帮助他们,不会被抛弃,是一种双赢的方式

• 软件包依赖的问题

• 国内镜像源

💡 以下是⼀些国内Linux软件安装源的官⽅链接:
- 阿⾥云官⽅镜像站
◦ 官⽅链接:https://developer.aliyun.com/mirror/
◦ 阿⾥云提供了丰富的Linux发⾏版镜像,包括CentOS、Ubuntu、Debian等,⽤⼾可
以通过该镜像站快速下载和更新软件包。
- 清华⼤学开源软件镜像站
◦ 官⽅链接:https://mirrors.tuna.tsinghua.edu.cn/
◦ 清华⼤学镜像站提供了多种Linux发⾏版的镜像,以及Python、Perl、Ruby等编程语
⾔的扩展包。该镜像站还提供了丰富的⽂档和教程,帮助⽤⼾更好地使⽤这些软件
包。
- 中国科学技术⼤学开源镜像站
◦ 官⽅链接:http://mirrors.ustc.edu.cn/
◦ 中科⼤镜像站提供了多种Linux发⾏版的镜像,以及常⽤的编程语⾔和开发⼯具。⽤⼾
可以通过该镜像站⽅便地获取所需的软件包和⼯具。
- 北京交通⼤学⾃由与开源软件镜像站
◦ 官⽅链接:https://mirror.bjtu.edu.cn/
◦ 北交⼤镜像站提供了多种Linux发⾏版的镜像,以及相关的软件仓库和⼯具。该镜像站
还提供了详细的⽂档和指南,帮助⽤⼾配置和使⽤这些软件源。
- 中国科学院软件研究所镜像站(ISCAS)
◦ 官⽅链接:http://mirror.iscas.ac.cn/
◦ ISCAS镜像站提供了多种Linux发⾏版、编程语⾔和开发⼯具的镜像。⽤⼾可以通过该
镜像站快速获取所需的软件包和更新。
- 上海交通⼤学开源镜像站
◦ 官⽅链接:https://ftp.sjtu.edu.cn/
◦ 上海交⼤镜像站提供了丰富的Linux软件资源,包括多种发⾏版的镜像和软件仓库。⽤
⼾可以通过该镜像站⽅便地下载和安装所需的软件包。
- ⽹易开源镜像站
◦ 官⽅链接:http://mirrors.163.com/
◦ ⽹易镜像站提供了多种Linux发⾏版的镜像,以及相关的软件仓库和⼯具。该镜像站还
提供了便捷的搜索功能,帮助⽤⼾快速找到所需的软件包。
此外,还有⼀些其他的国内镜像源,如搜狐开源镜像站等,但可能由于时间变化或政策调
整,部分镜像站的链接或状态可能有所变动。因此,建议⽤⼾在使⽤前访问官⽅⽹站或咨询
相关社区以获取最新的信息和帮助
如何扩展你的Linux里面软件包呢,只需要下面这条指令,就可以让你的Linux获得更多优质开源的软件包
sudo yum install -y epel-release(或者root用户下yum install -y epel-release)
1-3 yum具体操作
1-3-1 查看软件包
通过 yum list 命令可以罗列出当前⼀共有哪些软件包. 由于包的数⽬可能⾮常之多, 这⾥我们需要使⽤grep 命令只筛选出我们关注的包

注意事项:
• 软件包名称: 主版本号.次版本号.源程序发⾏号-软件包的发⾏号.主机平台.cpu架构.
• "x86_64" 后缀表⽰64位系统的安装包, "i686" 后缀表⽰32位系统安装包. 选择包时要和系统匹配.
• "el7" 表⽰操作系统发⾏版的版本. "el7" 表⽰的是 centos7/redhat7. "el6" 表⽰ centos6/redhat6.
• 最后⼀列, base 表⽰的是 "软件源" 的名称, 类似于 "⼩⽶应⽤商店", "华为应⽤商店" 这样的概念.
• Ubuntu 有上述有详细介绍
1-3-2 安装软件
通过 yum, 我们可以通过很简单的⼀条命令完成 gcc 的安装

因为我已经安装 过了,所以这里会显示already installed
• yum/apt 会⾃动找到都有哪些软件包需要下载, 这时候敲 "y" 确认安装(也可以像我一样加一个-y表示我同意,不需要询问)
• 出现 "complete" 字样或者中间未出现报错, 说明安装完成
注意事项:
• 安装软件时由于需要向系统⽬录中写⼊内容, ⼀般需要 sudo 或者切到 root 账⼾下才能完成
• yum/apt安装软件只能⼀个装完了再装另⼀个. 正在yum/apt安装⼀个软件的过程中, 如果再尝试⽤
yum/apt安装另外⼀个软件, yum/apt会报错
• 如果 yum / apt报错, 请⾃⾏百度,因为这可能涉及Linux底层问题,或者可以私信我
1-3-3 卸载软件
sudo yum remove [-y](可加可不加) [你要卸载的东西] (或者切换到root模式,不需要加sudo)


1-3-4 注意事项
关于 yum / apt 的所有操作必须保证主机(虚拟机)⽹络畅通!!!
可以通过 ping 指令验证
ping www.baidu.com

后面出现ms就说明联网了

1-4 安装源
Cetnos 安装源路径,只需输入下面的指令即可查看
ll /etc/yum.repos.d/

最上面的是自带的安装源
第二个 的是我们刚刚安装的扩展源


好玩的命令 :https://blog.csdn.net/xiaoxiaosutang/article/details/141053674