设为首页 收藏本站
查看: 865|回复: 0

[经验分享] 简单编译安装apache2

[复制链接]

尚未签到

发表于 2018-11-20 11:44:16 | 显示全部楼层 |阅读模式
引 入
  CentOS系统的软件管理主要有三种方式,rpm,yum,以及直接源码管理,前面已经详细介绍了rpm以及yum的相关用法,作为运维人员,源码安装有时也是不可避免的,下面,我们就以Apache为例简单介绍一下编译安装。
  

  一、 什么是编译安装

  • 编译:将源代码变为机器可执行的代码文件。
  • 安装:将可执行文件安装到操作系统里。


  二、 为什么要编译安装

  •   有些软件,并不能通过例如rpm这种包管理系统安装,这就需要下载源码编译安装。
  •   编译安装可以灵活地定制软件,选择自己需要的,取消自己不需要的。
  •   针对特定的硬件进行优化,编译安装可以获得更好的性能表现。
  

  三、 如何编译安装
  1.  构造编译环境
  编译工具链工具:
工具
简介
binutils
连接器、汇编器和其他用于目标文件和档案的工具
gcc
编译器,将源代码转换为机器代码
glibc
C库,提供标准例程(C函数)
  上述工具可以用yum install来安装
  2.  获取源码
  

  •   官方自建站点:
  apache.org (ASF)
  mariadb.org
  ...

  •   代码托管:
  SourceForge
  Github.com
  code.google.com
         ...
  3.  根据源码构造Makefile文件
DSC0000.png
  

  上图是生成Makefile文件的主要步骤,有时我们可能需要先用autoconf来构造configure,而autoconf工具也可以用yum来安装。
  4.  用make和make install把软件安装到系统   
  make工具的主要用法:  
目标
用途
make all
产生预设的目标,只敲入make也可以
make clean
清除编译结果
make distclean
除了清除编译结果,也把configure所产生的 Makefile 清除掉
make install
将程序安装到系统中
make dist
将程序和相关的文档打包为一个压缩文档以供发布
make distcheck
打包并检验
  

  四、 简单编译安装httpd
  
  1.  获取源码

wget http://apache.dataguru.cn/httpd/httpd-2.2.31.tar.bz2
DSC0001.png 通过wget命令去官网推荐的mirror下载,可以获取以.tar.bz2或以.tar.gz结尾的源码包

  2.  做好编译准备

  •    解压源码包
tar xvf httpd-2.2.31.tar.bz2 DSC0002.jpg
  通过“tar xf”命令可以根据源码包的相应后缀名解压源码包,进入解压后的源码包,我们可以看到已经有现成的configure跟Makefile.in文件。

  •   查看安装手册
DSC0003.png 源码包安装前建议看一下INSTALL跟README文件,例如httpd的解压目录下的INSTALL文件就告诉了我们基本的编译安装步骤。


  •   阅读./configure --help帮助
  
  
   DSC0004.jpg
  可以看到,通过./configure --help可以了解各详细的编译选项,例如可以通过--prefix来修改软件的安装位置,也可以通过--with-pcre=PATH等来指向对应需要依赖的软件,不过编译Apache2一般很简单,也就不过多介绍其他选项。
  3.  开始编译
./configure --prefix=/usr/apache2   DSC0005.jpg 在此,只给configure 添加--prefix选项来修改软件安装位置,可以看到已经成功生成Makefile文件。
  4.  产生预定的目标并安装到系统
make && make install   DSC0006.jpg
  用make工具来完成这一步,当然,make跟make install你也可以分开两条命令来写。可以看到,在--prefix选项指定的位置上已经安装上apache2相关文件包。
  5.  启动httpd,检查安装情况
[root@localhost bin]# cd /usr/apache2/bin
[root@localhost bin]# ./httpd -k start
[root@localhost bin]# curl -i localhost:80   DSC0007.jpg
  可以看到,httpd服务正在运行,说明安装成功。
  

  
后  记

简单的编译源码安装很容易,但要编译出高效的符合自己需求的软件包,这往往还需要一定的工作经验来辅助之。至此,软件包管理的rpm,yum和源码安装就介绍完了。


附:如对上面描述有疑问,期待与朋友您共同探讨。本人QQ:1084569767




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-637349-1-1.html 上篇帖子: Apache静态缓存配置 下篇帖子: 编译安装软件包之Apache
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表