源码编译安装apache httpd-2.2.29

    1.程序包编译

         程序包编译安装:   (需要gcc、make工具)

            建议安装  包组: development tools

        Application-VERSION-release.src.rpm –> 安装后,使

            用rpmbuild命令制作成二进制格式的rpm包,而后再安装

         源代码–>预处理–>编译(gcc)–>汇编–>链接–>执行

         源代码组织格式:

                多文件:文件中的代码之间,很可能存在跨文件依赖关系

                C、 C++: make (项目管理器, configure –>

                Makefile.in –> makefile)

                java: maven

         C代码编译安装三步骤:  (各平台的区别,查看目录下install 文档)

                1. 获取源码并展开归档,进入对应文件夹(勿切换去其他文件夹)

                2、 ./configure:

                    (1) 通过选项传递参数,指定启用特性、安装路径等;执

                    行时会参考用户的指定以及makefile.in文件生成makefile

                    (2) 检查依赖到的外部环境

                3、 make:根据makefile文件,构建应用程序

                4、 make install:复制文件到相应路径

        

         开发工具:

                    autoconf: 生成configure脚本

                    automake:生成Makefile.in

                 注意:安装前查看INSTALL, README

         开源程序源代码的获取:

                官方自建站点:

                apache.org (ASF)

                mariadb.org

                …

            代码托管:

                SourceForge.net

                Github.com

                code.google.com

       

         c/c++编译器: gcc (GNU C Complier)

        

         编译C源代码:

            前提:提供开发工具及开发环境

            开发工具: make, gcc等

            开发环境:开发库,头文件

            glibc:标准库

                通过“包组”提供开发组件

                CentOS 6: "Development Tools",

                "Server Platform Development",

             第一步: configure脚本

                选项:指定安装位置、指定启用的特性

                    –help: 获取其支持使用的选项

                  选项分类:

                    安装路径设定:

                    –prefix=/PATH: 指定默认安装位置,默认为/usr/local/

                    –sysconfdir=/PATH:配置文件安装位置

                    System types:支持交叉编译

                 Optional Features: 可选特性

                –disable-FEATURE

                –enable-FEATURE[=ARG]

                 Optional Packages: 可选包,

                –with-PACKAGE[=ARG],依赖包

                –without-PACKAGE,禁用依赖关系

               第二步: make

               第三步: make install

               安装后的配置:

                (1) 二进制程序目录导入至PATH环境变量中;

                    编辑文件/etc/profile.d/NAME.sh

                    export PATH=/PATH/TO/BIN:$PATH

                (2) 导入库文件路径

                    程序安装完成后,在安装路径下有lib目录,将此目录地址导入系统,即

                    编辑/etc/ld.so.conf.d/NAME.conf

                    添加新的库文件所在目录至此文件中;

                    eg: 添加apache 的库地址

                    vim /etc/ld.so.conf.d/http2.conf  (新建http2.conf )

                    文件中添加   /usr/local/apache2/lib

                    即可

                    让系统重新生成缓存:

                    ldconfig [-v]

                 (3) 导入头文件

                    程序安装路径下有include目录,即为头文件目录,一般需要软链接至

                    /usr/include中

                    基于链接的方式实现:

                    ln -sv

                    eg:apache 头文件添加:

                    进入apache 安装路径下的include

                    ln -sv /usr/local/http2/include  /usr/include/http2

                 (4) 导入帮助手册

                    程序安装完成后,在安装路径下有man目录,将此路径加入man配置文件即可

                    编辑/etc/man.config|man_db.conf文件

                    添加一个MANPATH

   apache 编译安装示例:

                1. 安装编译工具

                1.JPG

        

2.JPG

            2. 获取源码文件

            3.JPG

            3. 解压源码

            4.JPG

            4.当前目录下,进入httpd-2.2.29目录,查看install 文档(官方安装指南)

            5.JPG

            5.当前目录下执行 ./configure

            

            6.当前目录下,继续执行 make

            7.当前目录下,继续执行 make install

            8.添加PATH:添加 /etc/profile.d/http.sh,加入apachectl程序路径

源码编译安装apache httpd-2.2.29

源码编译安装apache httpd-2.2.29

            

        

        

        9.添加头文件

        

源码编译安装apache httpd-2.2.29

        9. 添加man 帮组路径

             编辑/etc/man.config 或  /etc/mandb.conf,  加入程序对应的man路径

源码编译安装apache httpd-2.2.29

        10.开启服务

源码编译安装apache httpd-2.2.29

        

源码编译安装apache httpd-2.2.29

        11.测试

        源码编译安装apache httpd-2.2.29

        

        

原创文章,作者:ldt195175108,如若转载,请注明出处:http://www.178linux.com/39817

(1)
ldt195175108ldt195175108
上一篇 2016-08-24
下一篇 2016-08-24

相关推荐

  • 进程和计划任务

    一、进程概念    内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等 v Process:  运行中的程序的一个副本(文件),是被载入内存的一个指令集合,在内存中运行,系统指定一个内存空间和PID编号;进程ID(Process ID ,PID )号码被用来标记各个进程;存在生命周期 &nbsp…

    Linux干货 2016-11-27
  • DevOpsDays大会,818坐标上海,我们来啦!!!

    DevOpsDays 818, 坐标上海, DevOpsDays上海大会, 我们来啦!!! 我们来啦!!! 我们来啦!!! 重要的事情说三遍。 标签: 运维  移动开发  IT技术  DevOps  2008年的敏捷会议上,Andrew Clay Shafer 和 Patrick Debois 讨论了关于“敏…

    Linux干货 2017-08-10
  • Mariadb数据库备份恢复系列(二):xtrabackup物理备份工具之完全备份

    实验二:利用xtrabackup+二进制日志实现完全备份和恢复数据库 1、安装xtrabackup软件包 2、验证数据的存储引擎类型 3、查看数据初始状态 4、利用innobackupex进行完全备份 5、进行apply-log操作 6、查看备份出来的文件的信息 7、模拟在完全备份后,对数进行修改,以测试通过二进制日志还原完全备份后尚未来得及备份的变化的数据…

    Linux干货 2016-11-24
  • Linux进程管理命令和性能监控工具的应用

    概述 监控系统的各方面的性能,保障各类服务的有序运行,是运维工作的重要组成部分,本篇就介绍了一些常用的系统监控命令和相关参数的说明 具体包含一下几个部分 1.进程管理基础 2.进程管理工具(ps,top,htop,kill) 3.内存监控类工具(vmstat,pmap) 4.系统监控累工具(glances,dstat)…

    Linux干货 2016-09-26
  • Linux基础知识(1)

    在开源的世界当中,有许多的开源协议,其中著名的有Apache、BSD和GPL协议,它们支撑了开源世界,使得让那些开源程序变得丰富多彩,我们知道开源协定的发起人是Stallman,它主张的自由含义为自由学习和更改,自由使用;自由分发和自由创建衍生版。
    而Linux就是在这样的开源协定下在1991年的10月份起义成功,同时,它也有它的哲学思想:

    2017-09-10
  • 第一周课程练习

    马哥教育网络班22期+第一周课程练习 1、描述计算机的组成及其功能   CPU(运算器和控制器),存储器(内存和外存),输入/输出设备。     (1)运算器:对数据进行加工处理(包括算术运算与逻辑运算);     (2)控制器:负责从存储器取出一条指令,并指出下一条指…

    Linux干货 2016-08-15

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-26 15:43

    章思路清晰,从yum源的配置,到httpd编译完成,一气呵成,图文并貌,让人一目了然,但是少了编译安装完成后的后续操作,这部分也是需要熟练配置的。