14程序包的编译安装

在有些源代码程序没有被编译成rpm的时候,或者其他人写了一个源代码程序,要把它安装在服务器上要怎么做呢?

那就需要对源代码进行编译安装了。

C代码编译安装三步骤:

1、./configure:

(1)通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile

(2) 检查依赖到的外部环境,如依赖的软件包

2、make:根据makefile文件,构建应用程序

3、make install:复制文件到相应路径

开发工具:

autoconf: 生成configure脚本

automake:生成Makefile.in

注意:安装前查看INSTALL,README

下面就以编译安装HTTP服务为例进行说明:

首先要 获取到HTTP源代码,此处通过FTP获取

yum install lftp  安装FTP–源代码获取工具

ftp://172.16.0.1/pub/Sources/sources/httpd/httpd-2.2.29.tar.bz2 –下载源代码

tar xvf httpd-2.2.29.tar.bz2  –解压源代码–> 得到http-2.2.29 目录

由于要用到autoconf和automake工具 因此可以安装 工具包

yum groupinstall "Development Tools"

安装工具安装好了之后进入http目录执行 ./configure命令,注意这个命令要指定该软件安装的程序所在目录,以及配置文件所在目录。所以执行./configure命令之前要先看一下目录下的INSTALL、README两个文件

http服务中–prefix=程序安装目录  –sysconfdir=配置文件目录 如果不加这两个选项,是有默认安装路径的。在man】帮助中有,接下来执行:

./configure  –prefix=/usr/local/huyuhttp  –sysconfdir=/etc/huyuhttp/

make 和 make install

这样呢其实已经安装完了http服务,但是此时http还没有启动,帮助文档还不能方便查看,调用的库也不行,共享库有哪些也不知道,所以要进行接下来的配置。

1、在/etc/profile.d/目录下创建一个以.sh结尾的文件,修改path变量,加入http二进制程序路径,这样就可以不用加路径直接执行http程序了。

vim  /etc/profile.d/huyuhttp.sh  

PATH=$PATH:/usr/local/huyuhttp/bin

.   /etc/profile.d/huyuhttp.sh  刷新path变量值

2、添加man手册,可以方便查看帮助

vim /etc/man_db.conf   /usr/local/huyuhttp/man 

3、添加lib图文件目录

vim /etc/ld.so.conf.d/huyuhttp.conf /usr/local/huyuhttp/lib

ldconfig 刷新库文件缓存

4、添加头文件,这里只需要在include的目录中加入http的include目录链接即可

ln -s /usr/local/huyuhttp/include/ /usr/include/huyuhttp

5、关闭防火墙

iptables -F

6、开启http

apachectl start

7、查看端口是否打开

netstat -ant 查看80

8、测试查看网页

links ip

curl ip

—-joker的部落阁

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

(0)
jokerjoker
上一篇 2016-11-27 22:55
下一篇 2016-11-27 23:04

相关推荐

  • N26-第六周

    请详细总结vim编辑器的使用 vim 模式化的编辑器 vim的三种模式:1.编辑模式(命令模式)                          2.输入模式          …

    Linux干货 2017-03-13
  • Nginx的编译安装

    nginx.html Nginx的编译安装 一、Nginx的特点 二、获取并编译Nginx 三、配置主页面 四、配置编译文件时的选项及模块 一、Nginx的特点 1、Nginx 专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率 。它支持内核 Poll 模型,能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数。 2、Nginx 具…

    Linux干货 2016-03-20
  • KVM虚拟化平台部署及管理

    前言 KVM即Kernel Virtual Machine,最初是由以色列公司Qumranet开发。2007年2月被导入Linux 2.6.20核心中,成为内核源代码的一部分。2008年9月4日,Redhat收购了Qumranet,至此Redhat拥有了自己的虚拟化解决方案,之后便舍弃Xen开始全面扶持KVM,从RHEL6开始KVM便被默认内置于内核中。本文…

    Linux干货 2015-07-19
  • 冥界之王-第8周作业

       1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。     网桥:网桥(Bridge)是早期的两端口二层网络设备,用来连接不同网段。网桥的两个端口分别有一条独立的交换信道,        &nbs…

    Linux干货 2016-10-23
  • 一个不想被打断腿的人的学习宣言

    听说不晒学习宣言的会被某人打断腿,忍了好几天,思考了好几天,想了想,还是腿比较重要。废话就不多说了。上图~~!  生命中总要去经历一些,好让自己在老的时候回忆起来,不至于说:“哎,怎么就没有去拼一下呢!”

    Linux干货 2016-10-27
  • Linux文件查找命令详解

    Linux中在文件系统上查找符合条件的文件,实现工具有locate和find locate: 1.它是依赖于事先索引构建好的数据库进行查找的。更新它的数据库有两种方式,一种是系统定期自动更新,另一种是执行命令updatedb手动更新数据库。 注意:索引构建过程需要遍历整个根文件系统,极消耗资源 2.它的工作特性: 1.因为是基于数据库实现的,所以查找速度快(…

    Linux干货 2017-04-10