源码编译安装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 21:22
下一篇 2016-08-24 21:22

相关推荐

  • 最简单的Linux系统——更加深入了解Linux启动过程

    自制一个最简单的Linux: 1、有一个新的磁盘,并创建分区 2、挂载分区,创建目录 3、拷贝内核文件 4、创建MBR和grub.conf文件 5、创建/etc/fstab文件,设置开机自动挂载 6、拷贝一个bash程序 7、卸载分区,以新磁盘重启系统

    Linux干货 2016-09-11
  • Heartbeat-Gui V2 实现HA LAMP 搭建wordpress博客

    环境:           N F S: 172.16.0.3 (OS CentOS 7)           node1:172.16.0.5 (OS CentOS 6.7)    &nb…

    Linux干货 2016-10-27
  • 第一周作业-01

    计算机组成    硬件:主要由5大部件组成,CPU包含运算器和控制器两大部件        CPU:运算器、控制器、寄存器、缓存        存储器:内存,RAM(Random Access Memory)    , Memory只支持平…

    Linux干货 2016-09-10
  • N23-第五周博客作业

    1、显示当前系统上root、fedora或user1用户的默认shell。 [root@localhost ~]# cat /etc/passwd | egrep "^root\>" | cut -d: -f1,7 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hell…

    Linux干货 2016-12-05
  • Linux文件层级结构标准(FHS)

    Linux文件层级结构标准(FHS) 设计FHS(Filesystem Hierarchy Standard)的目的主要是为了给Unix-like系统的管理员提供一个管理系统以及目录结构的一个参考。 由于利用Linux源码开发产品和发行版的企业或组织众多,如果每个组织都按照自己的喜好来组织系统中的文件结构,网络上必然出现各种各样的文件结构。这些产品的用户就不…

    2016-12-05
  • gzip压缩算法

    gzip,zlib,以及图形格式png,使用的是同一个压缩算法deflate。我们通过对gzip源码的分析来对deflate压缩算法做一个详细的说明: 第一,gzip压缩算法基本原理的说明。 第二,gzip压缩算法实现方法的说明。 第三,gzip实现源码级的说明。 1. Gzip压缩算法的原理      &n…

    Linux干货 2015-07-30

评论列表(1条)

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

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