浅谈 软件源码包编译及一个安装实例
linux下一切皆文件,虽然redhat公司提供了不少yum安装包,但是这些安装的包有时候没有我们需要的功能,这样就需要对程序的源码包进行编译安装,因为linux基本都是C语言的包,我们今天就来研究下C语言源码包的编译安装。
现在很多软件公司在源码里会写明软件的各种功能,方便用户的编译安装,一般分为以下几个流程:
C语言源代码编译步骤:
- 一、安装程序源码包
dnf -y install xxx
yum -y install xxx
- 二、解压源码包
tat -xvf XXX
- 三、配置文件选所需要的服务
壹、./configure
(1) 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的
指定以及Makefile.in文件生成Makefile
(2) 检查依赖到的外部环境,如依赖的软件包 - 貮、make 根据Makefile文件,构建应用程序
- 叁、make install 复制文件到相应路径
- 四、配置环境变量
echo 'PATH=XX:$PATH'> /etc/profile.d/xx.sh
. /etc/profile.d/xx.sh #让配置文件立刻生效
- 启动服务,配置后续的自启动服务等
试验环境在centos8下面进行,阿帕奇官网的最新版本是2.4.41
- 一、去官网下载httpd的最新版本2.4.41
cd /data
wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.41.tar.bz2
- 二、解压程序源码包
tar -xvf httpd-2.4.41.tar.bz2
- 三、进入文件目录查看 README 以及 INSTALL 文件的详细说明
- 四、我们给httpd指定新路径 新的配置文件路径以及启动一个ssl服务,具体服务可以用 ./configure --help 查看
cd httpd-2.4.41
./configure --prefix=/app/apache --enabke-ssl --sysconfdir=/etc/apache
我们会发现 error 错误,因为这个服务需要很多依赖包,然后我们解决它就行。
dnf -y install gcc
dnf -y install make;apr-devel;apr-util-devel;pcre-devel;openssl-devel;
- 四、开始编译安装
make安装的时候出错了
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
解决办法如下:
yum -y install redhat-rpm-config
下面继续安装编译:
make && make install
- 五、配置环境
echo 'PATH=/app/apache/bin:$PATH' > /etc/profile.d/apache.sh
. /etc/profile.d/apache.sh
- 六、创建Apache 自己特有的用户
ps -aux
useradd -r -s /sbin/nologin apache
然后去修改Apache的配置文件
vim /etc/apache/httpd.conf
修改里面的两行命令
user apache
group apache
apachectl stop
apachectl
- 关闭并重新启动Apache服务
ps -aux 查看服务是否已经启动 - 查看版本号
[root@Centos8 ~]# apachectl -v
Server version: Apache/2.4.41 (Unix)
Server built: Oct 14 2019 21:54:58
[root@Centos8 ~]# httpd -v
Server version: Apache/2.4.41 (Unix)
Server built: Oct 14 2019 21:54:58
版本号是2.4.41,说明我们已经编译安装成功了!