## 源码包
**源码包的优点**
>[success] 开源,如果有足够的能力,可以修改源代码
> 可以自由选择所需的功能
> 软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
> 卸载方便
**源码包的缺点**
>[info] 安装过程步骤较多,尤其安装较大的软件集合时(如 LAMP 环境搭建),容易出现拼写错误
> 编译过程时间较长,安装比二进制安装时间长
> 因为是编译安装,安装过程中一旦报错新手很难解决
**安装过程:**
```
(1)下载软件包。
(2)解压缩。
(3)进入解压目录。
(4)./configure
编译前准备
这一步主要有三个作用:
① 在安装之前需要检测系统环境是否符合安装要求。
② 定义需要的功能选项。“./configure”支持的功能选项较多,可以执行“./configure --help” 命令查询其支持的功能。
一般都会通过“./configure --prefix=安装路径”来指定安装路径。
③ 把系统环境的检测结果和定义好的功能选项写入Makefile 文件,后续的编译和安装需要依赖这个文件的内容。
需要注意的是,configure 不是系统命令,而是源码包软件自带的一个脚本程序,
所以必须采用“./configure”方式执行(“./”代表在当前目录下)。
(5)make 编译
make 会调用 gcc 编译器,并读取 Makefile 文件中的信息进行系统软件编译。
编译的目的就是把源码程序转变为能被 Linux识别的可执行文件,这些可执行文件保存在当前目录下。
编译过程较为耗时,需要有足够的耐心。
(6)make clean 清空编译内容(非必需步骤)。
如果在“./configure”或“make”编译中报错,那么我们在重新执行命令前一定要记得执行make clean 命令,
它会清空Makefile 文件或编译产生的“.o”头文件。
(7)make install 编译安装
这才是真正的安装过程,一般会写清楚程序的安装位置。
如果忘记指定安装目录,则可以把这个命令的执行过程保存下来,以备将来删除使用。
```
>[danger] 删除
> 源码包没有删除命令,如果需要删除,直接删除安装目录即可。
- 基础
- 文档帮助
- 计算机基础知识
- Centos文件系统
- Linux基础知识入门
- Linux命令帮助文档
- 常见命令
- 其他
- vim编辑器
- 编辑命令
- 末行模式
- 常见命令
- 配置文件
- 用户useradd
- 用户login.defs
- 环境变量设置
- 常用命令
- 帮助命令
- 管道符
- 关机和重启
- 目录操作
- 目录结构
- ls
- cd
- pwd
- mkdir
- rmdir
- cp
- rm
- mv
- 文件操作
- touch
- ln 重点
- stat 重点
- file
- cat
- tac
- nl
- more
- less
- head
- tail
- 文件处理工具
- wc
- cut
- sort
- uniq
- 文件属性(权限)
- chmod
- chown
- chgrp
- umask
- sudo权限
- chattr权限
- chattr
- lsattr
- 文件特殊权限
- SetUID
- SetGID
- StickyBIT粘着位
- ACL权限
- 搜索命令
- 命令搜索whereis
- grep
- 拓展
- 元字符
- egrep
- locate
- find
- type
- 压缩和解压
- zip和unzip
- gzip和gunzip
- bzip2和bunzip2
- tar
- 网络管理
- netstat网络状态
- 消息邮件
- 软件包安装
- 源码包
- 二进制包
- rpm手工安装
- yum在线安装
- 系统管理
- 常用命令
- shell内建命令
- pstree
- bash 特性
- history 历史命令
- 补全、快捷键
- 命令行展开
- 命令执行结果
- alias命令别名
- 通配符
- 重定向及管道
- 计算机运算
- bash 中的变量的种类
- bash 的配置文件
- bash中的算术运算
- bash条件测试
- 用户和组管理
- 用户管理
- useradd
- usermod
- userdel
- passwd
- pwck
- chage
- chsh
- chfn
- id
- finger
- su
- 用户组管理
- groupadd
- groupmod
- groupdel
- gpasswd
- groups
- 用户查看
- whoami
- w
- who
- last
- lastlog
- lastb
- 网络管理
- 相关命令
- 防火墙
- 文件拷贝
- 软件工具
- 软件包管理
- Gcc软件安装
- 其他
- redis
- 相关资料
- swoole
- IDE工具
- vscode + Xdebug 断点调试
- vscode 远程链接
- git
- 不想输入账户密码
- window电脑问题
- 浏览器https访问不了
- php
- 常用函数
- rabbitMQ
- mysql
- 触发器
- 常用更新语句
- 忘记密码处理方法
- 查询
- 数据迁移
- 加索引不加锁
- 查询优化
- 基础知识
- 进程线程协程
- tp6
- 注册自定义命令空间
- Ajax异常错误
- nginx
- 域名变成ip问题
- 概念知识点
- QPS,TPS,RT概念
- Nginx服务大量TIME-WAIT
