程序包管理之编译安装apache

编译就是讲开发者提供的源代码,通过编译器,汇编器,连接器转换成可以直接在操作系统上运行的二进制指令的过程。C/C++源码的编译通常包括以下几个过程:

    预处理(Preprocessing)
    编译(Compilation)
    汇编(Assembly)
    链接(Linking)

gcc编译器的大体过程如下图所示:程序包管理之编译安装apache

Linux中源码编译前我们首先需要依赖环境的支持,即编译工具、以及各个被依赖的程序包的开发组件:

1.编译的工具包组有:

Development tools

Server Platform Development

Desktop Platform Development

Debug Tools

2.被依赖的程序包的开发组件:

(1)编译安装被依赖的程序;

(2)安装相关程序的名称中包含devel的子包;

由于源码包中的源码文件存放在多个文件中,彼此之间存在着依赖关系,所以我们需要项目管理工具,相对于C/C++我们通常使用的是GNU make。项目构建工具会根据配置文件(makefile)中定义的次序对源码文件进行编译。

编译安装的过程如下:

1.运行configure脚本

configure脚本的应用:

–prefix:指定默认安装路径

–sysconfdir:指定配置文件安装路径

–with-CAPABLILITY:依赖的程序包

–without-CAPABILITY:不依赖的程序包

–enable-FEATURE:启用某个特性

–disable:禁用某个特性

2.运行make命令,完成项目构建

3.运行makeinstall命令,完成安装

我们以Apache为例进行演示:

程序包管理之编译安装apache 程序包管理之编译安装apache程序包管理之编译安装apache

经过上述三步,编译安装的基本步骤已经完成,下面我们需要将编译生成的二进制程序文件路径,库文件路径,以及头文件,man帮助手册路径写入系统的环境变量当中: 1).在/etc/profile.d/下建立一个以.sh结尾的文件将/usr/local/apache2/bin路径添加进去。 程序包管理之编译安装apache

2).在/etc/ld.so.conf.d下面建立一个以.conf结尾的的文件将库文件路径写进去。并执行ldconfig命令,重新生成库映射缓存ld.so.conf. 程序包管理之编译安装apache

[root@localhost ~]# ldconfig

3).将头文件生成软连接到/usr/include中 程序包管理之编译安装apache 4).将man手册路径添加到/etc/man.conf当中(CetenOS 6.8) 程序包管理之编译安装apache

测试安装是否成功:

[root@localhost include]# apachectl start
httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
[root@localhost include]# netstat -ant
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address   Foreign Address State  
tcp0  0 0.0.0.0:111 0.0.0.0:*   LISTEN  
tcp0  0 0.0.0.0:22  0.0.0.0:*   LISTEN  
tcp0  0 0.0.0.0:38326   0.0.0.0:*   LISTEN  
tcp0  0 127.0.0.1:631   0.0.0.0:*   LISTEN  
tcp0  0 127.0.0.1:250.0.0.0:*   LISTEN  
tcp0 64 10.1.250.133:22 10.1.250.21:2519ESTABLISHED 
tcp0  0 :::58111:::*LISTEN  
tcp0  0 :::111  :::*LISTEN  
tcp0  0 :::80   :::*LISTEN  #80端口已经出现
tcp0  0 :::22   :::*LISTEN  
tcp0  0 ::1:631 :::*LISTEN  
tcp0  0 ::1:25  :::*LISTEN

关闭防火墙:

[root@localhost include]# iptables -F

用links浏览器测试:

程序包管理之编译安装apache

显示It works表明安装成功,并且服务已经开启。

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

(0)
YOUNGYOUNG
上一篇 2016-08-24
下一篇 2016-08-24

相关推荐

  • N25-第二周总结

    linux bassic The second week of blogging 一、linux中的文件,及文件操作管理命令 1. 文件概念 存储空间存储的一段流式数据,对数据可以做到按名存取。 linux中的文件具有的特点是:可通过操作系统或者程序对外提供信息,也能对内输入信息,可以被创建,删除。linux中,文件有特别重要的意义,他们为操作系统和设备提供…

    Linux干货 2016-12-11
  • 三步走进行IP大揭秘

    跟随博主三步走进行IP大揭秘! 一、IP简介 1.ip地址:可以分为合法ip地址(公网ip地址)和私有ip地址, 合法ip地址主要应用于internet上的主机访问,而私有ip地址应用于局域网中计算机的相互通信。 2.ip地址的表示形式:分为二进制表示和点分十进制表示。 一般使用点分十进制表示,现在通常使用的ip地址长度均为32位,由四个八位域组成,可称为八…

    2017-09-02
  • 每日一练 —8.4 文本处理工具,正则表达式

    练习 1 、找出ifconfig 命令结果中本机的所有IPv4 地址 2 、查出分区空间使用率的最大百分比值 3 、查出用户UID 最大值的用户名、UID 及shell 类型 4 、查出/tmp 的权限,以数字方式显示 5 、统计当前连接本机的每个远程主机IP 的连接数,并按从大到小排序   6,显示/proc/meminfo文件中以大写或小写s开…

    Linux干货 2016-08-15
  • N26-博客作业-week2

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。   cp:copy 复制文件和路径 cp [OPTION]… [-T] SOURCE DEST cp [OPTION]… SOURCE… DIRECTORY cp [OPTION]… -t DIRECTORY SOURCE&…

    Linux干货 2017-02-12
  • 6.vim编辑器使用方法总结

    vi: visual interface,文本编辑器 vim: vi improved,vi的增强版 文本:ASCII,Unicode, 文本编辑器种类: 行编辑器:sed, 全屏编辑器:nano,vi vim:模式化的编辑器 基本模式: 编辑模式,也叫命令模式 输入模式 末行模式:内置的命令行接口 模式转换: 编辑模…

    Linux干货 2017-08-06
  • Linux中一些常用的命令(一)

    ls命令 ls命令:用来列出当前目录的内容或指定目录,是使用频率较高的命令 -l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等 -a:列出所有隐藏文件和目录 -h:以人类可读的方式将文件或者目录大小显示出来 -R:把当前目录下的目录的所有内容列出来(递归) -d:显示…

    Linux干货 2017-03-30