疯狂吐槽腾某云..编译安装apache折腾了一下午..还是我不太熟练。

首先要先准备好安装apache的三个依赖包以及apache包。(一定要准备好!!折腾了一下午的小白握拳!!)

-rw-r--r--   root   root    Oct    apr-1.6..tar.gz
-rw-r--r-- root root Oct apr-util-1.6..tar.gz
-rw-r--r-- root root Jul : httpd-2.4..tar.gz
-rw-r--r-- root root Oct pcre-8.00.tar.gz

使用 tar -xf + **.tar.gz 命令展开归档

drwxr-xr-x  gentoo distro     Sep   : apr-1.6.
-rw-r--r-- root root Oct apr-1.6..tar.gz
drwxr-xr-x gentoo distro Sep : apr-util-1.6.
-rw-r--r-- root root Oct apr-util-1.6..tar.gz
drwxr-xr-x games Sep : httpd-2.4.
-rw-r--r-- root root Jul : httpd-2.4..tar.gz
drwxrwxrwx Sep : pcre-8.00
-rw-r--r-- root root Oct pcre-8.00.tar.gz
  • 进入apr-1.6.3目录下编译安装apr
./configure --prefix=/usr/local/apr
make
make install

但是在./configure 时报错

cannot remove `libtoolT’: No such file or directory ,

解决方案:

  1. yum install libtool,
  2. 编辑 configure文件(vim ./configure),查找 $RM "$cfgfile" 这个地方,用#注释掉
  • 进入apr-util-1.6.1目录下编译安装apr-util
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
make install

这次./configure没有报错

但是make报错:

fatal error:expat.h no such file or directory

解决方案

  1. yum install expat-devel安装该库(但这里不理解是怎么知道缺少这个文件的。难道缺少xxx.h文件就要安装相应的xxx.devel文件??求告知)
  • 进入pcre-8.00目录下编译安装pcre
./configure --prefix=/usr/local/pcre
make
make install

这次终于没有报错..再报错我就要骂人了

  • 进入httpd-2.4.34目录编译安装apache..终于进入正题了
./configure --prefix=/usr/local/apache1 --with-apr=/usr/local/apr1 --with-apr-util=/usr/local/apr-util1
make clean
make
make install

注意!!!./configure 后面的选项一定要写全!!!不然会一直说缺少依赖!!

make clean是因为可能在make的时候出现error`xx.lo’ is not a valid libtool object (不清楚为什么)

总之,绕了一大圈安装了apache,起码对命令熟悉了一点。也算有所收获吧;p

                      ---by:孙好烦

Linux学习之编译安装apache的更多相关文章

  1. 64位linux系统通过编译安装apache+…

    二.安装php 上传php压缩包 例如:php-5.2.3.tar.gz 移动 mv php-5.2.3.tar.gz /usr/local/src 进入 cd /usr/local/src 解压 t ...

  2. Linux(CentOS)下编译安装apache

    Centos7.6系统 已经安装lnmp一键环境 想装个apache跑php7 (php7的安装以及与apache的交互在这里: https://www.cnblogs.com/lz0925/p/11 ...

  3. linux 源码编译安装apache

    cc1 是c语言的编译器.

  4. linux中编译安装Apache、PHP、MySQL(上)

    1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...

  5. Linux下编译安装Apache Http Server

    Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...

  6. Linux 通过编译安装apache服务以及配置

    Linux 编译安装apache服务 一.安装 1.通过编译安装,首先需要下载源代码安装包 apache下载链接:http://httpd.apache.org/download.cgi 2.解开源代 ...

  7. Linux编译安装Apache+PHP

    Linux编译安装Apache+PHP 来自:自学it网,http://www.zixue.it/. 1]编译安装Apache+PHP 1.安装程序依赖库和开发环境   为了省事把所需要的库文件全都安 ...

  8. linux编译安装Apache

    1 前言 编译安装Apache HTTP Server,目前最新的版本为2.4.41,做好apr,apr-util,pcre的安装后编译安装即可. 2 准备工作 三个:apr,apr-util,pcr ...

  9. CentOS 下编译安装Apache

    CentOS 下编译安装Apache 卸载原有的apache 首先从 http://httpd.apache.or 下载apache源码包httpd-2.4.4.tar.gz然后从 http://ap ...

随机推荐

  1. java 日志脱敏框架 sensitive,优雅的打印脱敏日志

    问题 为了保证用户的信息安全,敏感信息需要脱敏. 项目开发过程中,每次处理敏感信息的日志问题感觉很麻烦,大部分都是用工具类单独处理,不利于以后统一管理,很不优雅. 于是,就写了一个基于 java 注解 ...

  2. QVector也是隐式数据共享的

    Behind the scenes, QString uses implicit sharing (copy-on-write) to reduce memory usage and to avoid ...

  3. redis-大key寻找

    使用redis-rdb-tools 项目地址 https://github.com/sripathikrishnan/redis-rdb-tools 生成csv命令 rdb -c memory //d ...

  4. HTTP发送RAW请求注意的问题

    1.使用jar httpcomponents-client-4.5.6-bin.tar.gz 解压后倒入lib中的所有包 2.参考代码如下 import org.apache.http.HttpRes ...

  5. shell脚本修改文本中匹配行之前的行的方法

    原创文件,欢迎阅读,禁止转载. 例子中是把 finish 前一行的 "yes" 改成 "YES"有一个方法就是利用sed+awk一起来完成. zjk@zjk:~ ...

  6. PHP入门——基本巩固

    ----------一.变量 ----------二.运算 ----------三.控制结构 ----------四.函数 ----------六.字符串 ----------七.数组 ------- ...

  7. 结合之前看的一些东西,阅读RockMQ实战与原理解析笔记

    Topic有多个message queue,消息可以并行的向各个message queue发送,消费者也可以并行的从多个message queue读取消息并消费 clustering模式消费一个top ...

  8. redis 配置文件解释 以及集群部署

    redis是一款开源的.高性能的键-值存储(key-value store),和memcached类似,redis常被称作是一款key-value内存存储系统或者内存数据库,同时由于它支持丰富的数据结 ...

  9. mkdir npm

    mkdir -p 创建目录 没有就创建 有就用 npm init -y 不提示创建package.json 文件

  10. git 创建新项目 本地仓库和远程仓库的合并

    1.$ git pull origin master --allow-unrelated-histories 告诉系统允许合并不相关历史的内容 2.git branch --set-upstream ...