编译安装php 5.5 缺少依赖包 及解决方案 – 日记本的回忆

要素时可运用 YUM 选择骑上以下互相牵连包装袋:

#yum install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-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 openssl openssl-devel openldap openldap-devel nss-ldap openldap-clients openldap-servers bison bison-devel readline readline-devel libmcrypt libmcrypt-devel net-snmp-devel libXpm* libxml2 libxml2-devel patch

一、骑上互相牵连依赖包(即忍受库)

1、libiconv (密码经过的密码替换译本,用它来处置国文杂多的编码经过的替换)

[根@尺寸 LNMP公司] tar -xzf libiconv-1.14.tar.gz

[根@尺寸 LNMP公司] cd libiconv-1.14

[根@尺寸 libiconv-1.14]# ./configure

[根@尺寸 libiconv-1.14]# make && make install

2、libmcrypt (用于编密码的库)

[根@尺寸 LNMP公司] tar -xzf libmcrypt-2.5.8.tar.gz

[根@尺寸 LNMP公司] cd libmcrypt-2.5.8

[根@尺寸 libmcrypt-2.5.8]# ./configure

[根@尺寸 libmcrypt-2.5.8]# make && make install

[根@尺寸 libmcrypt-2.5.8]# cd libltdl/

[根@尺寸 libltdl]# ./configure –enable-ltdl-install

[根@尺寸 libltdl]# make && make install

3、mhash (苛刻的函数库)

[根@尺寸 LNMP公司] tar xjf mhash-0.9.9.9.tar.bz2

[根@尺寸 LNMP公司] cd mhash-0.9.9.9

[根@尺寸 mhash-0.9.9.9]# ./configure

[根@尺寸 mhash-0.9.9.9]# make && make install

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/libmcrypt.so.4.4.8

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2

[根@尺寸 mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1

[根@尺寸 mhash-0.9.9.9]# ldconfig  不重行添加模块,以下缀编 mcrypt 时,认不出反省波湾阴谋事件。

—————————————————————————————————————————————–

在#./configure 反省 php 波湾阴谋事件时能够会涌现以下认不出。

checking whether mhash <= 0.8.15... no

configure: error: “You need at least libmhash 0.8.15 to compile this 顺序。

引起:

mhash波湾阴谋i的默许骑上手段 /usr/local/,互相牵连图书出租处在 /usr/local/lib 下。而 php 仅搜索 /usr/lib/ 这样地得名次。因而你未查明。 mhash 互相牵连图书出租处情形。

溶剂:

经过软用环连接方式 /usr/local/lib 布头下的 mhash 互相牵连库论文已用环连接 /usr/lib/ 布头下。

—————————————————————————————————————————————–

4、mcrypt

[根@尺寸 LNMP公司] tar -xzf mcrypt-2.6.8.tar.gz

[根@尺寸 LNMP公司] cd mcrypt-2.6.8

[根@尺寸 mcrypt-2.6.8]# ./configure

[根@尺寸 mcrypt-2.6.8]# make && make install

二、源骑上 php(FastCGI 模特儿)

PHP-FPM 是 一任一某一 PHP FastCGI 指引航线支撑人,即 PHP FastCGI Progress Manager。

FastCGI 它是可显示力量的。,快车道地在 web server 与手稿程序语言文字的彼此的。FastCGI 静态语言文字的首要优点是 web server 交托开来。这种技术容许 web server 运用静态语言文字在形形色色的主要的上运转,以大规模伸出和改善保护而不失去工厂功效。

php-fpm 它可以高视阔步什么远端 FastCGI 的 web server 任务。

在 后版本,php-fpm 早已包罗在内 core 里面。,不再是第三方包了。不再必要修补顺序。。

PHP-FPM 赡养胜过的 PHP 课程支撑方式,能无效把持内存和处置、使稳定向上装货 PHP 设定,比 spawn-fcgi 不断地很多。,因而 PHP 正式招收。在 ./configure 的时辰带 -–enable-fpm 决定因素可以翻开 PHP-FPM。

1、骑上 php

[根@尺寸 LNMP公司] mkdir /usr/local/php

[根@尺寸 LNMP公司] tar -xzf php-5.4.4.tar.gz

[根@尺寸 LNMP公司] cd php-5.4.4

[根@尺寸 php-5.4.4]# ./configure –prefix=/usr/local/php \

–with-config-file-path=/usr/local/php/etc \

–with-mysql=/usr/local/mysql/ \

–with-mysqli=/usr/local/mysql/bin/mysql_config \

–with-iconv-dir=/usr/local \

–with-freetype-dir \

–with-jpeg-dir \

–with-png-dir \

–with-zlib \

–with-gd \

–with-libxml-dir=/usr \

–enable-xml \

–disable-rpath \

–enable-bcmath \

–enable-shmop \

–enable-sysvsem \

–enable-inline-optimization \

–with-curl \

–with-curlwrappers \

–enable-mbregex \

–enable-fpm \

–with-pdo-mysql=/usr/local/mysql \ #可选决定因素,是否在这边明确提出,骑上pdo_mysq时省掉明确提出。

–enable-mbstring \

–with-mcrypt \

–enable-gd-native-ttf \

–with-openssl \

–with-mhash \

–enable-pcntl \

–enable-sockets \

–with-xmlrpc \

–enable-zip \

–enable-soap \

–without-pear

[根@尺寸 php-5.4.4]# make ZEND_EXTRA_LIBS=”-liconv”

[根@尺寸 php-5.4.4]# make install

configure 密码如次:

—————————————————————————————————————————————–

./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/etc –with-mysql=/usr/local/mysql/ –with-mysqli=/usr/local/mysql/bin/mysql_config –with-iconv-dir=/usr/local –with-freetype-dir –with-jpeg-dir –with-png-dir –with-zlib –with-gd –with-libxml-dir=/usr –enable-xml –disable-rpath –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –with-curl –with-curlwrappers –enable-mbregex –enable-fpm –with-pdo-mysql=/usr/local/mysql –enable-mbstring –with-mcrypt –enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl –enable-sockets –with-xmlrpc –enable-zip –enable-soap –without-pear

—————————————————————————————————————————————–

能够涌现的认不出:

1、configure: error: xml2-config not 找到了。 Please check your libxml2 骑上。

溶剂:

源骑上 libxml2 或经过 yum 骑上 libxml2-devel。

(1)[根@尺寸 LNMP公司] tar -xzf libxml2-tests-2.8.0.tar.gz

(2)[根@尺寸 LNMP公司]yum install  libxml2-devel

2、 configure: error: Please reinstall the libcurl distribution –

    easy.h should be in /include/curl/

溶剂:

源骑上 curl 或经过 yum 骑上 libcurl-devel。

(1)[根@尺寸 LNMP公司] tar -xzf curl-7.26.0.tar.gz

(2)[根@尺寸 LNMP公司]yum install libcurl-devel

3、configure: error: jpeglib.h not 找到了。

溶剂:

源骑上 jpegsrc 或经过 yum 骑上 libjpeg-devel。

(1)[根@尺寸 LNMP公司] tar -xzf jpegsrc.v8d.tar.gz

(2)[根@尺寸 LNMP公司]yum install libjpeg-devel

4、configure: error: png.h not 找到了。

溶剂:

源骑上 libpng 或经过 yum 骑上 libpng-devel。

(1)[根@尺寸 LNMP公司] tar -xzf libpng-1.5.12.tar.gz

(2)[根@尺寸 LNMP公司]yum install libpng-devel

4、configure: error: freetype.h not 找到了。

溶剂:

源骑上 freetype 或经过 yum 骑上 libfreetype-devel。

(1)[根@尺寸 LNMP公司] tar -xzf freetype-2.4.10.tar.gz

(2)[根@尺寸 LNMP公司]yum install libfreetype-devel

波湾阴谋课程中能够涌现的认不出:

5、Generating

/data1/lnmp/php-5.4.4/sapi/cli/php: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory

make: *** [ext/phar/] Error 127

溶剂:

#echo “/usr/local/mysql/lib/” << /etc/ld.so.conf.d/mysql-x86_64.conf

6、PEAR package PHP_Archive not installed: generated phar will require php的 phar extension be 启用。

两种溶剂:

(1)设定 –without-pear

(2)#wget 

    #php go-pear.phar

7、configure: WARNING: unrecognized options: –enable-discard-path, –enable-safe-mode

正告引起:

在前 波湾阴谋时加了 –enable-safe-mode –enable-discard-path –enable-fastcgi –enable-force-cgi-redirect选择权,但这样地选择是不要素的,同时会引来很多操心,详细说明解说可以承担 google 一下, 此选择权已被停止,波湾阴谋时,您可以 #./configure –help | grep “safe-mode” 检查一下,无书信出口,表现不再忍受!

—————————————————————————————————————————————–

2、确立或使安全互相牵连设定论文

[根@尺寸 php-5.4.4]# cp php.ini-production /usr/local/php/etc/php.ini

[根@尺寸 php-5.4.4]# vim /etc/profile

找到 export PATH=$PATH:/usr/local/mysql/bin 这共有的,

严厉批评为:export PATH=$PATH:/usr/local/mysql/bin:/usr/local/php/bin:/usr/local/php/sbin:

[根@尺寸 php-5.4.4]# source /etc/profile

终极 能完成的 决定因素, 譬如,msyql config  ,不断地 编密码 encpty 等 不太轻易找到, 增加这两个决定因素 骑上后,当你运用它的时辰想想!

./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/etc –with-mysql=/usr/local/mysql –with-mysqli –with-iconv-dir=/usr/local –with-freetype-dir –with-jpeg-dir –with-png-dir –with-zlib –with-libxml-dir=/usr –enable-xml –disable-rpath  –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –with-curl  –enable-mbregex  –enable-fpm  –enable-mbstring  –with-gd –enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl –enable-sockets –with-ldap –with-ldap-sasl –with-xmlrpc –enable-zip –enable-soap –without-pear –with-zlib –enable-pdo –with-pdo-mysql –with-mysql –with-apxs2=/usr/local/apache/bin/apxs

发表评论

电子邮件地址不会被公开。 必填项已用*标注