总结:先后遇到libz库文件没有正确的链接和pcre库文件没有正确的链接

1./configure后提示需要zlib

2.locate zlib,系统中没有zlib的共享库so文件,但是有一些头文件,不在/usr/include或者/usr/local/include下,还是找zlib-dev.rpm开发包安装一下比较好

3.看看 zlib-develxxx.rpm包的信息

rpm -qpi zlib-devel-1.2.3-27.el6.x86_64.rpm

4.看看该包里头都含有什么文件

rpm -qpl zlib-devel-1.2.3-27.el6.x86_64.rpm

5.查看该包的依赖关系

rpm -qpR zlib-devel-1.2.3-27.el6.x86_64.rpm

如图需要zlib包,依赖里头含有的so共享库

6.解压RPM文件看看

mkdir tmp

rpm2cpio /mnt/Packages/zlib-devel-1.2.3-27.el6.x86_64.rpm |cpio -div

7.在看看zlib-1.2.3xxx.rpm里头有什么

rpm -qpl /mnt/Packages/zlib-1.2.3-27.el6.x86_64.rpm

8.查查系统里头是不是已经安装了libz.so

系统里头已经安装了,应该是安装oracle的时候安装上的

9.系统自带的libz.so.1.2.3和zlib-1.2.3xxx.rpm中的libz.so.1.2.3大小比较.上面的是rpm,下面的是系统的

10.查看系统中自带的libz.so.1.2.3的SONAME:

readelf -d /lib64/libz.so.1.2.3

11.编译zlib-dev-1.2.3..RPM释放出来的example.c看看,用gcc时,-lz指定连接libz共享库

12.报错:找不到zlibz库

13.看看缓存,缓存里头有

原因,库文件位置不对.默认搜索/usr/lib或者/usr/lib64

14.解决办法:

ln -sv /lib64/libz.so.1.2.3 /usr/lib64/libz.so

15.再次编译

成功编译出example可执行文件,执行example,成功!

16.再次回到ngnix源代码目录,执行./configure成功,没有提示zlib库问题

17.make,make install后运行nginx报错

18.检查nginx的共享库都有哪些:

ldd –d nginx

19.检查libpcre.so现在系统的分布

ldconfig –v |grep pcre

20.原因如上,很明显是安装pcre后,库安装的位置为/usr/local/lib/*pcre*,而不是缺省的/usr/lib64

在redhat 64位机器上, nginx可能读取的pcre文件为/lib64/libpcre.so.1文件.

ln -s /usr/local/lib/libpcre.so.1 /lib64/

21.nginx正常运行,缺省情况下,./configure不加任何参数,则如图configure arguments=空

ngnix编译遇到的问题.的更多相关文章

  1. 《基于Nginx的中间件架构》学习笔记---4.nginx编译参数详细介绍

    通过nginx -V查看编译时参数: 在nginx安装目录下,通过./configure --help,查看对应版本ngnix编译时支持的所有参数: Nginx编译参数详细介绍: --help 显示本 ...

  2. 在MAC平台下编译Ngnix ,由于MD5算法不能编译通过 解决办法

    近期想学习Ngnix 代码,前些日子,对”自己下手狠一次“, 买了MAC 本. 所以想在Mac 上编译,是必须的,不然对不起自己的内心. 不巧遇到了MD5算法编译的问题 src/core/ngx_cr ...

  3. 编译PHP并与Ngnix整合

    nginx本身不能处理PHP,它只是个web服务器,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端. nginx一般是把请求发fastcgi管理进程处理,fascgi管 ...

  4. 编译Ngnix遇到的问题,查看程序依赖的库文件

    要点:ldd 可以读取每个可以运行的程序依赖的 so 文件. 编译的时候提示需要Openssl库. 查看本机,已经安装了openssl 查看编译报错文件,查找Openssl所依赖的库 more obj ...

  5. LAMP自定义编译安装

    httpd 2.4.4 + mysql-5.5.28 + php-5.4.13编译安装过程: 一.编译安装apache 1.解决依赖关系 httpd-2.4.4需要较新版本的apr和apr-util, ...

  6. CentOS7编译安装Nginx-1.8.1和编译参数

    CentOS7编译安装Nginx-1.8.1和编译参数 Web服务器Nginx    LNMP是一组众所周知的Web网站服务器架构环境,即由Linux+Nginx+MySQL+PHP(MySQL有时也 ...

  7. 【服务器环境搭建-Centos】Nginx1.9.9 安装(编译源码)

    nginx官网不同版本下载地址:http://nginx.org/download/ 我使用的是nginx-1.9.8.tar.gz 安装其他支持软件 可以使用rpm –q xxx   查询库是否已经 ...

  8. Ngnix 安装、信号量、虚拟主机配置

    ngnix的安装很简单 1.先从ngnix官网下载ngnix压缩包 wget http://nginx.org/download/nginx-1.6.2.tar.gz 2.解压并进入其目录 tar - ...

  9. nginx安装-源码编译

    官方文档:http://nginx.org/en/docs/configure.html 参考:http://jingyan.baidu.com/article/e2284b2b45f693e2e61 ...

随机推荐

  1. EasyUI Combobox设定默认值

    $(function () { $('#Select6').combobox({ onLoadSuccess: function () { var data = $('#Select6').combo ...

  2. c# (nop中)下拉列表(有外键)

    第一种情况.view视图加载出来时就有值,实现步骤如下 1.在操作的界面Model中建立public List<SelectListItem> xxx(取名){ get; set; } 2 ...

  3. 内存管理运算符new delete与内存管理函数malloc free的区别——已经他们对对象创建的过程。

    (1)内存管理函数与内存管理运算符的区别 内存管理函数有内存分配函数,malloc calloc realloc 以及内存释放函数free. 内存管理运算符有new 和delete. 两种内存管理方式 ...

  4. android压力测试命令monkey详解

    一.Monkey 是什么?Monkey 就是SDK中附带的一个工具. 二.Monkey 测试的目的?:该工具用于进行压力测试. 然后开发人员结合monkey 打印的日志 和系统打印的日志,结局测试中出 ...

  5. CodeIgnitor 创建admin和其他目录,前后端分离,很巧妙的方式,网上查找其他的都不是使用这种方式实现的。

    在index.php的第97和98行的注释, // The directory name, relative to the "controllers" folder. Leave ...

  6. git --如何撤销已放入缓存区(Index区)的修改

    修改或新增的文件通过 git add --all 命令全部加入缓存区(index区)之后,使用 git status 查看状态(git status -s 简单模式查看状态,第一列本地库和缓存区的差异 ...

  7. 01背包问题:Charm Bracelet (POJ 3624)(外加一个常数的优化)

    Charm Bracelet    POJ 3624 就是一道典型的01背包问题: #include<iostream> #include<stdio.h> #include& ...

  8. SQLLDR记录数与文本记录数比较

    我们平时都用sqlldr进行将文本数据加载到数据库,但是有时候由于数据问题导致入库率不能达到100%,因此我们要检测是否存在不能入库的数据记录.以下shell脚本就是统计文本中记录数和数据库中记录数是 ...

  9. elixir 高可用系列(四) Task

    概述 之前学习的 Agent,GenSever以及GenEvent,都是用来管理状态或者处理消息的. 但是在很多时候,我们需要的是执行某个任务,这时如果使用 GenSever 或者 GenEvent, ...

  10. We have detected that MySQL products under the Commercial license are installed. In order to proceed with this GPL installation these Commercial

    下载了MySQL 5.6.15,在安装时,出现了下面的提示信息: 按提示信息的要求单击“是”,结果安装就无法进行下去. 从提示信息上看,意思是指电脑中原来安装有商业版的许可,现在要转换成为GPL许可. ...