Linux源码编译安装需经历配置(configure)、编译(make)、安装(make install)三阶段;须先装依赖、检查工具链,再依是否有configure或CMakeLists.txt选择构建流程,最后配置环境变量使程序可用。

Linux源码编译安装不是“一键傻瓜式”的过程,核心在于理解三个关键阶段:配置(configure)、编译(make)、安装(make install)。跳过配置直接编译往往失败,而忽略依赖检查常导致中途报错。
一、准备工作:环境与依赖检查
确保系统已安装基础编译工具链和常用开发库:
- Debian/Ubuntu 系统执行:sudo apt update && sudo apt install build-essential zlib1g-dev libssl-dev libreadline-dev libyaml-dev libcurl4-openssl-dev autoconf automake libtool bison
- RHEL/CentOS/Fedora 系统执行:sudo dnf groupinstall "Development Tools" && sudo dnf install zlib-devel openssl-devel readline-devel yaml-devel libcurl-devel autoconf automake libtool bison
- 确认 gcc、make、wget 或 curl 可用:gcc --version && make --version
下载源码包后解压,进入目录前建议用 ls -l 查看是否有 configure 脚本或 CMakeLists.txt —— 这决定后续是走 autotools 还是 CMake 流程。
二、配置阶段:生成 Makefile 是成败关键
运行 ./configure 并非总能成功。常见做法包括:
- 查看可选参数:./configure --help | less,重点关注 --prefix(指定安装路径,默认常为 /usr/local)
- 自定义安装路径(推荐非 root 用户或避免污染系统):./configure --prefix=$HOME/myapp
- 启用/禁用功能模块:./configure --with-openssl --without-python
- 若 configure 不存在但有 CMakeLists.txt,改用:mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=$HOME/myapp ..
配置失败时,错误信息通常提示缺失某库或头文件,此时需回退补装对应 -dev/-devel 包。
三、编译与安装:控制并发与权限
配置成功后生成 Makefile,执行编译:
- 单核编译(稳妥):make
- 多核加速(推荐):make -j$(nproc)(自动使用全部 CPU 核心)
- 编译完成后验证(如有 test 目标):make check 或 make test
- 安装到指定位置:make install(若 --prefix 指向 /usr 或 /opt 等需 root 权限,加 sudo;指向用户目录则无需)
注意:部分项目提供 make install-strip 可自动剥离调试符号,减小安装体积。
四、安装后处理:让程序被系统识别
安装到非标准路径(如 $HOME/myapp)后,需手动配置环境变量:
- 临时生效:export PATH="$HOME/myapp/bin:$PATH"
- 永久生效:将上行添加至 ~/.bashrc 或 ~/.zshrc,再执行 source ~/.bashrc
- 若程序依赖动态库(.so),还需设置:export LD_LIBRARY_PATH="$HOME/myapp/lib:$LD_LIBRARY_PATH"
- 验证是否可用:which program_name 和 program_name --version
卸载源码安装的软件没有统一命令,通常需回到源码目录执行 make uninstall(前提是 Makefile 支持),否则只能手动删除 --prefix 对应目录。










