56twe 发表于 2014-9-12 11:44:40

源码编译安装程序包及httpd源码安装实践

源码编译安装程序包从步骤并不复杂,实际安装过程中最主要的就是准备好编译环境;根据自己的实际需求,选择或设置程序包编译参数;以及程序包安装后的相关配置。

1.编译环境准备
以CentOS6为例,一般通过yum安装2个包组,编译工具,以及编译程序包依赖的主要的头文件和库文件就都准备好了。
   # yum groupinstall "Development Tools"
   # yum groupinstall "Server Platform Development"
另外,如果在程序包的编译阶段,发现缺少某些依赖开发包,则通过yum安装之,然后继续编译。这个过程可能会反反复复!

2.程序包编译参数选择或设置
在运行configure脚本前,通常要根据自己的实际需要带上各种参数。这些参数大致归为如下3类。
A) 指定相关的安装路径。举例:
   --prefix=/usr/local/package_name
   --sysconfdir=/etc/package_name
B) 指定启用/禁用的特性。举例:
   --enable-fpm
   --disable-socket
C) 指定所依赖功能、程序或文件。举例:
   --with-function:启用某功能
   --without-function:禁用某功能
不同的程序,其configure脚本支持的具体的参数选项都不完全相同。具体以运行 ./configure --help 帮助信息为准。

3.程序包安装后的相关配置
程序包安装完成后,为了让系统能找到相应的二进制可执行程序文件、可供其它第三方程序包调用的库文件和头文件和man帮助文件等,要做相应的设置工作。具体可参见下面的安装实例。

httpd源码安装实践:
1.从apache官方网站下载源码文件httpd-2.2.29.tar.bz2,假定存放在/tmp目录下。
2.# cd /tmp
3.# tar xf ./httpd-2.2.29.tar.bz2
4.# cd httpd-2.2.29
5.编译并安装。假定事先规划将程序包安装在/usr/local/httpd,httpd的配置文件放置在/etc/httpd,并允许动态模块加载功能。
   # ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so
   # make
   # make install
6.程序包安装后的相关配置工作。
   A) 在/etc/profile.d目录下创建文件"httpd.sh",文件内容如下:
      # vim /etc/profile.d/apache.sh
      PATH=/usr/local/httpd/bin:$PATH
      export PATH
   B) 在/etc/ld.so.conf.d/目录下创建文件"httpd.conf",文件内容如下:
      /usr/local/httpd/lib
   C) 让系统重新生成库文件路径缓存
         # ldconfig
   D) 创建符号链接,以便系统能找到httpd提供的头文件。
         # ln -s /usr/local/httpd/include/usr/include/httpd
   E) 导出man文件。修改配置文件/etc/man.config,在相应的位置添加如下行:
         MANPATH /usr/local/httpd/man

至此,apache的WEB服务器程序httpd通过源码编译安装并设置完毕!由于没有服务脚本,可以通过如下方式手动启动:
# apachectl start


页: [1]
查看完整版本: 源码编译安装程序包及httpd源码安装实践