梦想的生活,就是去新西兰放羊

[LTMP搭建] Centos 6.5 安装常用库文件

接上篇 http://www.cnblogs.com/antarctican/p/3747420.html 

环境是本地虚拟机下 32位的CentOS 6.5 + php 5.3.5,  以及VPS的 64位CentOS 7 + php 5.4.32。 会遇到不同的error折腾。

 

一 、有一些必要的如 gcc 、gcc-c++ 以及一些可选的扩展,手动安装很麻烦,所以集中安装

yum -y install gcc gcc-c++ autoconf libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

 

二、以下我手动编译安装到指定位置, 首先  cd /usr/local/src/

1. 安装PCRE (约2M)。 PCRE非常重要,后面有几个程序openssl、rewrite等要依赖于它

[root@localhost src]# wget -c http://jaist.dl.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
[root@localhost src]# tar -zvxf pcre-8.35.tar.gz
[root@localhost pcre-8.35]# ./configure --prefix=/usr/local/lib/pcre --libdir=/usr/local/lib/pcre --includedir=/usr/local/include/pcre

  

2. 安装 zlib 。 可到 http://www.zlib.net 找版本

[root@localhost pcre-8.35]# wget -c http://cznic.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz
[root@localhost pcre-8.35]# tar -zvxf zlib-1.2.8.tar.gz
[root@localhost zlib-1.2.8]# ./configure --shared
[root@localhost zlib-1.2.8]# make test
[root@localhost zlib-1.2.8]# make install
[root@localhost zlib-1.2.8]# cp zutil.h zutil.c /usr/local/include      # 复制到include

 

3.  安装 openssl, —— 这是一个很慢的过程。版本列表: http://www.openssl.org/source/ 

[root@localhost src]# wget -c http://www.openssl.org/source/openssl-1.0.1i.tar.gz
[root@localhost src]# cd openssl-1.0.1i
[root@localhost openssl-1.0.1i]# ./config --prefix=/usr/local/openssl --shared zlib-dynamic enable-camellia  // 参数带不带--的区别不清楚 

[root@localhost openssl-1.0.1i]# ./config t                  # 可忽略
[root@localhost openssl-1.0.1i]# make depend
[root@localhost openssl-1.0.1i]# make test                   # 可忽略
[root@localhost openssl-1.0.1i]# make && make install

### 安装完毕, 设置软连接和补充ssl路径
[root@localhost openssl-1.0.1i]# cd /usr/local/
[root@localhost local]# ln -s openssl ssl

  [root@localhost local]# cd /etc/ld.so.conf.d
  [root@localhost ld.so.conf.d]# touch www-lib.conf                      # 当前目录的所有 .conf 文件都会被载入
  [root@localhost ld.so.conf.d]# echo '/usr/local/openssl/lib' > www-lib.conf       # 注:此处 ‘/usr/local/openssl/lib’ 目录为 libssl.so.x.x.x 的所在目录。

  [root@localhostld.so.conf.d]# ldconfig

当我运行  # openssl version , 版本号仍然是之前的版本, 继续搜索

@ 关于环境变量(这是一个山寨网站上看到的——虽然我没有尝试其他方法,但我想这方法有点迂):

  # vi /root/.bash_profile,   打开文件有以下这么一段:

  # User specific environment and startup programs

  PATH=$PATH:$HOME/bin

  export PATH

添加openssl/bin路径到PATH: i 编辑如下:

  PATH=/usr/local/openssl/bin:$PATH:$HOME/bin

  :wq 保存退出。

 

@附: 执行  # ldd /usr/local/openssl/bin/openssl 可看到输出 核心文件及路径

 

4. 安装 libiconv 。 这个手动安装主要是我rpm库里没有。  http://www.gnu.org/software/libiconv/

wget -c http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar -zvxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv make && make install cd ../

 make install 步骤可能出现以下错误:

  ./stdio.h:1010:1: error: ‘gets’ undeclared here (not in a function)

  解决方法是在 make 之前运行  

   # sed -i '/gets is a security hole/d' srclib/stdio.h

  接着make 搞定。

 

5. 安装 libmcrypt。 ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt

  # ./configure        /**** --prefix=/usr/local/libmcrypt ***/ // *注意: 再次在centos 7.x86_64 + php 5.4.下安装是总找不到。建议安装libmcrypt时不要用 --prefix

  # make && make install

  建立符号链接, 不明觉厉。

   [root@localhost src]# ls -al /usr/local/libmcrypt/lib/libmcrypt*
  [root@localhost src]# ln -s /usr/local/libmcrypt/lib/libmcrypt.la /usr/lib/libmcrypt.la
  [root@localhost src]# ln -s /usr/local/libmcrypt/lib/libmcrypt.so /usr/lib/libmcrypt.so   
  [root@localhost src]# ln -s /usr/local/libmcrypt/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4 
  [root@localhost src]# ln -s /usr/local/libmcrypt/lib/libmcrypt.so.4.4.7 /usr/lib/libmcrypt.so.4.4.7

 

6.  安装 libmhash  。 http://sourceforge.net/projects/mhash/

 [root@localhost src]# wget -c http://nchc.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.bz2
 [root@localhost src]# tar -jvxf mhash-0.9.9.9.tar.bz2

 [root@localhost src]# cd mhash-0.9.9.9
 [root@localhost mhash-0.9.9.9]# ./configure
 [root@localhost mhash-0.9.9.9]# make && make install
 [root@localhost mhash-0.9.9.9]# cd ../

 #### 查看/usr/local/lib下 libmhash文件, 建立符号链接到 /usr/lib/
 [root@localhost src]# ls -al /usr/local/lib/libmhash* 
 [root@localhost src]# ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
[root@localhost src]# ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2  [root@localhost src]# ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so  [root@localhost src]# ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a  [root@localhost src]# ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la

 

 

 接下篇: http://www.cnblogs.com/antarctican/p/3748427.html

 (本文仅个人经验, 不作教程, 仅供参考)

posted @ 2014-05-07 18:53  Shautch Donne  阅读(1510)  评论(0编辑  收藏  举报