博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
centos软件源码编译安装httpd
阅读量:6474 次
发布时间:2019-06-23

本文共 2490 字,大约阅读时间需要 8 分钟。

使用CentOS软件过程中,可能需要用编译使用.src的软件源码包,有些是因为需要某些功能,有些是需要某个版本,以下以httpd为例:

下载源码httpd并编译

[root@www1 ~]# tar -xf httpd-2.4.6.tar.bz2
[root@www1 ~]# cd httpd-2.4.6; ls #看到install文件
[root@www1 httpd-2.4.6]# cat install #查看帮助,有些软件是README
...
$ ./configure --prefix=PREFIX
$ make
$ make install
$ PREFIX/bin/apachectl start
...
[root@www1 httpd-2.4.6]#./configure --help #查看编译帮助
[root@www1 httpd-2.4.6]# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd2
... #出现错误提示,如果没有此提示,则跳过错误步骤
configure: error: APR not found. Please read the documentation.

[root@www1 ~]# yum install apr apr-util

[root@www1 httpd-2.4.6]# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd2 --with-apr-util=/usr/local/apr-util --with-apr=/usr/local/apr
configure: error: pcre-config for libpcre not found. PCRE is required and available from #错误提示

[root@www1 ~]# yum install pcre

[root@www1 httpd-2.4.6]# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd2 --with-apr-util=/usr/local/apr-util --with-apr=/usr/local/apr --with-pcre=/usr/local/pcre

[root@www1 httpd-2.4.6]# make

[root@www1 httpd-2.4.6]# make install

[root@www1 httpd-2.4.6]# cd /usr/local/apache2;ls

bin build cgi-bin error htdocs icons include logs lib man manual modules
[root@www1 apache2]# bin/apachectl start
[root@www1 apache2]# ss -tnl #查看80端口出现,表示成功启动

编译安装软件包时,如果是安装在系统默认的安装位置/usr/local则不需要配置软件(但这样不方便以后彻底删除),如果是安装在自定义的路径下,则需要进行以下后续的配置,方便软件(像rpm/yum安装那样)使用;后续配置如下

[root@www1 apache2]# vim /etc/profile.d/apache2.sh #配置系统的软件启动方式

export PATH=/usr/local/apache2/bin:$PATH

[root@www1 apache2]# . /etc/profile.d/apache2.sh

[root@www1 apache2]# echo $PATH
/usr/local/apache2/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

[root@www1 apache2]# apachectl stop

[root@www1 apache2]# ss -tnl #80端口关闭,表示配置apachectl命令成功,以后不需要用绝对路径启动,停止。
[root@www1 ~]# vim /etc/ld.so.conf.d/apache2.conf #导出库文件路径
/usr/local/apache2/lib
[root@www1 ~]# ldconfig -v #重新生成库文件缓存

[root@www1 ~]# ln -s /usr/loacl/apache2/include /usr/include/ #导出头文件

[root@www1 ~]# vim /etc/man_db.conf #centos 7 ( centos6为/etc/man.conf)

MANDATORY_MANPATH /usr/local/apache2/man #导出man手册

一些常用参数说明:

--prefix=: #默认安装位置
--sysconfdir=: #配置文件安装位置
System types:

--disable-FEATURE                 #禁用某功能                --enable-FEATURE[=ARG]      #开启某功能                --with-PACKAGE[=ARG]          #依赖某包                --without-PACKAGE                 #忽略某依赖包

其它的源码软件包类似这样编译,主要查看软件包的INSTALL或README及编译时的./configure帮助

转载于:https://blog.51cto.com/10201808/2147280

你可能感兴趣的文章
core dump相关
查看>>
Linux五种IO模型
查看>>
Bootstrap技术: 模式对话框的使用
查看>>
小知识,用myeclipes找jar
查看>>
in-list expansion
查看>>
设计原则(四):接口隔离原则
查看>>
基于react的滑动图片验证码组件
查看>>
iOS快速清除全部的消息推送
查看>>
java单例模式深度解析
查看>>
【学习笔记】阿里云Centos7.4下配置Nginx
查看>>
VuePress手把手一小時快速踩坑
查看>>
dnsmasq安装使用和体验
查看>>
学习constructor和instanceof的区别
查看>>
Vijos P1881 闪烁的星星
查看>>
ABP理论学习之领域服务
查看>>
Qt 控制watchdog app hacking
查看>>
让所有IE支持HTML5的解决方案
查看>>
RDD之五:Key-Value型Transformation算子
查看>>
Windows 搭建Hadoop 2.7.3开发环境
查看>>
python操作mysql数据库实现增删改查
查看>>