0%

Linux编译安装源码包

源码包就是源代码的可见的软件包,基于Linux和BSD系统的软件最常见;源代码安装具有自定义软件功能,优化编译参数、提高性能以及解决不必要的空间依赖等好处。

一、程序包编译

  • Application-VERSION-release.scr.rpm ——> 安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装
  • 源代码——> 预处理——> 编译——> 汇编——> 链接——> 执行
  • 源代码组织格式:多文件:文件中的代码之间,很可能存在跨文件依赖关系

​ C、C++:make项目管理器(configure脚本——> Makefile.in——> Makefile)

​ Java:maven

二、以安装HTTPD为例介绍具体步骤:

1.从Apache网站 下载压缩包
[root@localhost ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.43.tar.bz2

如果使用wget命令出现无法验证证书的警告,则在地址后加上 —no-check-certificate,命令如下:

[root@localhost ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.43.tar.bz2 --no-check-certificate
2.解压缩
[root@localhost ~]# tar xvf httpd-2.4.43.tar.bz2

如果解压缩时出现报错:tar (child): lbzip2:无法 exec: 没有那个文件或目录,解决方法为:

[root@localhost ~]# yum install -y bzip2
3.对即将安装的软件进行配置,检测当前环境

编译命令根据./configure —help提示添加所需功能,输入命令后如果报错,按照报错提示安装所需要的依赖包

[root@localhost httpd-2.4.43]# ./configure --prefix=/apps/httpd24 --sysconfdir=/etc/httpd24
#.......成功状态如下
Server Version: 2.4.43
    Install prefix: /apps/httpd24
    C compiler:     gcc -std=gnu99
    CFLAGS:           -pthread  
    CPPFLAGS:        -DLINUX -D_REENTRANT -D_GNU_SOURCE  
    LDFLAGS:           
    LIBS:             
    C preprocessor: gcc -E
4.编译

此过程需要等待一段时间

[root@localhost httpd-2.4.43]# make -j 4
5.安装
[root@localhost apps]# make install
6.测试

启动服务

[root@localhost ~]# apachectl

访问测试网站

[root@localhost ~]# curl localhost:80
<html><body><h1>It works!</h1></body></html>