Centos系统下载大全 | Redhat系统下载大全 | Windows2012系统下载大全 | Windows2008系统下载大全| CMS教程 | 网站地图 51运维网-专注Linux/Unix系统安全运维!
当前位置:51运维网 > 入门 > Linux入门 > 正文

Linux入门 七 源码编译安装配置apache

时间:2014-06-03 18:24 来源:未知 作者:www.51ou.com 阅读:

在Linux系统中,软件安装可以通过rpm管理器安装,也可以通过本地的yum或者服务器端yum来安装软件。但,这一切都要依靠他人做好的程序包。如果我们自己想自定义安装,按需索取,只安装自己需要的功能模块,可能源代码编译安装就更加合适了。

这里以编译安装apache为例,简单介绍源代码编译安装软件的过程。

 

一、概述

 

源代码编译安装是指获取程序的源代码,然后在Linux开发环境下,编译,然后安装到系统中的过程。本文以CentOS 6.5 X86_64 relase作为实验环境,实验室内部拥有yum源。无局域网yum源的小友,可以使用互联网yum源。本文主要涉及到的内容有:

编译安装前的环境配置

获取源代码

查看帮助信息

运行配置脚本

编译源代码

安装程序

测试安装结果

配置环境变量

输出头文件至系统

配置man手册文件路径

   加载库文件

 

二、编译安装前的环境配置

 

源代码编译需要系统提供gcc开发环境,因此需要事先配置好编译环境。当前系统为 CentOS 6.5,常用的开发包组为“Development Tools”和“Server Platform Development”。安装即可。具体怎么配置访问内部yum源,请参见博主的另一篇博客。此处仅给出安装开发编译环境的过程

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#由于中间过程内容较多这里省略了一些不太重要的内容,小友们可以自行安装
#查看。这里安装组包使用yum groupinstall -y
(安装过程无需输入确认)这里先安装Development Tools
[root@station47 yum.repos.d]# yum groupinstall "Development Tools" -y
Loaded plugins: fastestmirror, refresh-packagekit, security
Determining fastest mirrors
base                                                              | 3.2 kB     00:00
base/primary_db                                                   | 3.2 MB     00:00
Setting up Group Process
Loading mirror speeds from cached hostfile
base/group_gz                                                     | 220 kB     00:00
Package 1:make-3.81-20.el6.x86_64 already installed and latest version
Package patch-2.6-6.el6.x86_64 already installed and latest version
....................................................................................................
......................................................................
Complete!
[root@station47 yum.repos.d]#
1
2
3
4
5
6
7
8
9
10
11
12
#安装Server Platform Development组包
[root@station47 yum.repos.d]# yum groupinstall "Server Platform
Development" -y
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Setting up Group Process
Loading mirror speeds from cached hostfile
.....................................................................................
.....................................................................................
  openldap.x86_64 0:2.4.23-32.el6_4.1                               
  openssl.x86_64 0:1.0.1e-15.el6                                    
  pam.x86_64 0:1.1.1-17.el6                                         
Complete!

 

如果看到如上所述的Complete,基本可以确定安装成功。可以测试一下

 

1
2
3
4
5
6
7
#显示如下信息说明已经安装成功
[root@station47 yum.repos.d]# gcc --version
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
[root@station47 yum.repos.d]#

三、获取源代码

 

从本地ftp服务器上获取源码包。源码包名字一般格式是package-version.tar.{gz|bz2|xz}(马帮风格,或的意思)。这里博主从本地服务器获取到一份源码。名称为

httpd-2.2.25.tar.bz2 。解压该文件至家目录(作为当前临时的工作目录)。

 

1
2
3
4
5
6
7
8
9
10
#解压源码包
[root@station47 ~]# tar xf httpd-2.2.25.tar.bz2
[root@station47 ~]# ll
total 5464
-rw-------.  1 root root    2774 Feb 14 21:34 anaconda-ks.cfg
drwxr-xr-x  11  500  500    4096 Jun 29  2013 httpd-2.2.25
-rw-r--r--   1 root root 5524905 Jul 25  2013 httpd-2.2.25.tar.bz2
-rw-r--r--.  1 root root   43809 Feb 14 21:34 install.log
-rw-r--r--.  1 root root    9963 Feb 14 21:30 install.log.syslog
[root@station47 ~]#

 

四、查看帮助信息

 

  切换当前工作目录至~/httpd-2.2.25,作为当前的工作目录(十分重要)。

1
2
3
4
5
6
7
8
9
10
11
[root@station47 ~]# cd httpd-2.2.25
#切换目录,查看源码目录的基本文件结构。
[root@station47 httpd-2.2.25]# ls
ABOUT_APACHE  CHANGES        httpd.dsp       libhttpd.dep  NOTICE            server
acinclude.m4  config.layout  httpd.mak       libhttpd.dsp  NWGNUmakefile     srclib
Apache.dsw    configure      httpd.spec      libhttpd.mak  os                support
build         configure.in   include         LICENSE       README            test
BuildAll.dsp  docs           INSTALL         Makefile.in   README.platforms  VERSIONING
BuildBin.dsp  emacs-style    Ins