编译源码软件包的流程为:一、安装编译环境,如ubuntu下使用apt install build-essential,centos下使用yum groupinstall "development tools";二、解压源码包并进入目录,命令为tar -xzf package-name.tar.gz;三、运行./configure检测系统环境并生成makefile,可指定--prefix、--enable-feature等选项;四、执行make编译源码,可使用make -j$(nproc)加速;五、运行sudo make install将文件安装到指定路径;六、可选make clean或make distclean清理,部分软件支持sudo make uninstall卸载;七、若无configure脚本需运行./autogen.sh生成,cmake项目则使用cmake ..代替configure。整个过程需注意依赖库和权限问题,成功的关键是正确处理configure输出的错误信息。

编译源码软件包是 Linux 或类 Unix 系统中安装软件的常见方式,尤其当你需要自定义配置、使用最新版本或系统包管理器未提供所需软件时。最常见的编译流程是
./configure && make && make install
在开始之前,确保系统已安装必要的编译工具和依赖库。以常见的 Linux 发行版为例:
# Ubuntu/Debian sudo apt update sudo apt install build-essential autoconf automake libtool # CentOS/RHEL/Fedora sudo yum groupinstall "Development Tools" # CentOS 7 sudo dnf groupinstall "Development Tools" # Fedora/CentOS 8+
此外,还需根据具体软件包安装其依赖的开发库(如 OpenSSL、zlib、libcurl 等),否则
configure
通常源码包是
.tar.gz
.tar.xz
tar -xzf package-name.tar.gz cd package-name/
进入解压后的目录,你会看到
configure
configure.ac
configure.in
./configure
configure
./configure
--prefix=/usr/local
/usr/local
--enable-feature
--disable-feature
--with-library
--without-library
示例:
./configure --prefix=/opt/myapp --enable-shared --disable-static
Makefile
config.h
⚠️ 如果 configure 失败,查看输出中的错误信息,通常是缺少依赖库。根据提示安装对应 -dev 或 -devel 包。
make
make
Makefile
make
make -j$(nproc) # 使用 CPU 所有核心并行编译,加快速度
.c
.o
✅ 成功后你会在源码目录看到生成的二进制文件(如
)。src/myprogram登录后复制
make install
将编译好的文件复制到系统指定位置(由
--prefix
sudo make install
注意:
通常需要 root 权限,因为它会写入make install登录后复制等系统目录。/usr/local登录后复制
bin/
lib/
include/
share/
etc/
make clean # 删除编译生成的文件,保留 Makefile make distclean # 更彻底,删除 configure 生成的文件(推荐重新配置前使用)
如果软件支持,可用:
sudo make uninstall
⚠️ 并非所有软件都提供
目标,建议使用uninstall登录后复制或记录安装文件以便后续管理。checkinstall登录后复制
configure
如果只有
configure.ac
autogen.sh
configure
./autogen.sh # 或 autoreconf -i
这需要安装
autoconf
automake
libtool
有些项目使用 CMake 而非 Autotools:
mkdir build && cd build cmake .. make sudo make install
流程类似,但工具链不同。
tar -xzf software.tar.gz cd software/ ./configure --prefix=/usr/local --enable-feature make -j$(nproc) sudo make install
基本上就这些。关键是看懂
configure
不复杂,但容易忽略依赖和权限问题。
以上就是如何编译源码软件包 configure/make流程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号