源码编译安装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和内核编译 1、分区并创建文件系统 fdisk /dev/sdb分两个必要的分区/dev/sdb1对应/boot /dev/sdb2对应根/mkfs.ext4 /dev/sdb1mkfs.ext4 /dev/sdb2 2、挂载boot mkdir/mnt/bootmount /dev/sdb1 /mnt/boot 3、安装grub grub-i…

    Linux干货 2016-09-23
  • 用户管理+文本处理+文件查找

    用户管理 erter useradd (使用频率2) /etc/default/useradd用户模板文件说明 /etc/login.defs 关于新建用户的默认配置文件 批量创建用户和修改密码 usermod 修改用户的属性 chpasswd修改密码 2.chage option user 3.finger user 查看用户信息 4.chfn user …

    Linux干货 2017-04-09
  • 8.3_Linux文件系统权限和特殊权限浅析

    什么是Linux文件系统权限? 在Linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录。 Linux文件系统权限的分类 Linux中的权限分为:read(读)、write(写)、execut(执行)三种权限 文件和目录表示的权限也各有不同 权限对于文件的意义: r: 可使用文件查看类工具获取其内容 w: 可修改内…

    Linux干货 2016-08-05
  • centos7上实现LAMP,并搭建wordpress

    实验:LAMP的架构,并搭建wordpress              1、准备环境,                      #mkdir src    …

    2017-08-07
  • 负载均衡LVS原理及其应用

    一、LB常用解决方案     1. 硬件负载均衡解决方案:          F5公司: BIG-IP         Citrix公司: …

    Linux干货 2015-12-28
  • Linux运维不想早死的方法 一

    Linux运维不想早死的方法 一 为了提高工作效率,减少工作时间,爱惜生命,远离辐射;务必做好以下几点: 1,一定用快捷键         这里简单的说下几个常用的快捷按键。 Ctrl + l     清屏,相当于clear命令。 Ctrl…

    Linux干货 2017-03-26

评论列表(1条)

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

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