php初记

WBOY
풀어 주다: 2016-06-13 10:31:22
원래의
1021명이 탐색했습니다.

php小记

from?http://hi.baidu.com/wang01ning/blog/item/6076e2ee2f3be4e3cf1b3e16.html

?

PHP的安装虽然有时候很简单,可是如果应用一多,我们安装起来就很头痛了!常见的就是PHP插件的安装问题最多了!

?????? 其实不管是你是Apache类的应用还是Nginx类的.PHP的安装都不是很简单,虽然网上很多configure,但是那不一定是适合你的,因为很多都直接关系着你的系统及系统版本和内核.那下面就进入正题

??? 首先来一个最常见的就是configure: error: libjpeg.(a|so) not found

?? 很多人都纳闷儿了,我都安装了的,为什么就找不到呢?找不到其实就应试想到它的搜索位置里面是没有的,要不然才不会说not found

??? 原因是我们大部分一些软件只要rpm -qa | grep ***

???? 这时下面就有两个重复的的软件

[[email protected]_Server php-5.2.13]# rpm -qa | grep jpeg
libjpeg-6b-33
libjpeg-6b-33
libjpeg-devel-6b-33

32位和64位的都装了。你可以强制删除两个包,再重装64位的包。rpm --allmatches --nodeps这种方法真是损系统又损你.有时候强制执行的东西也会随便把lib中的一些包给强制删了..所以我认为不建议这么做,重复就让它重复吧,没关系的!

??? 要解决问题就是它没找到,我安装了的,那我得去找找看它到底是放那里去了

[[email protected]_Server php-5.2.13]# updatedb
[[email protected]_Server php-5.2.13]# locate libjpeg.so
/usr/lib64/libjpeg.so.62
/usr/lib64/libjpeg.so.62.0.0
/usr/lib64/libjpeg.so
/usr/lib/libjpeg.so
[[email protected]_Server php-5.2.13]# locate libjpeg.a
/usr/lib64/libjpeg.a
/data0/software/jpeg-6b/libjpeg.a
[[email protected]_Server php-5.2.13]#

我们在编译的时候经常看到一个库的文件,一般就是以*.a,*.so等名字的,尝试的搜索搜索,不行就模糊搜索!

通过上面的搜索其实就知道一些原因了,configure一般的搜索编译路径为/usr/lib/下,因为php默认就在/usr/lib/下找相关库文件,而x64机器上是在:/usr/lib64.这时你就可以直接把需要的库文件从/usr/lib64中拷贝到/usr/lib/中去就可以了.

那么记得要在configure前执行如下的命令:

cp -frp /usr/lib64/libjpeg.* /usr/lib/

usr/bin/install: cannot create regular file `/usr/local/man/man1/cjpeg.1': No such file or directory
make: *** [install] Error 1
提示找不到目录。既然电脑找不到,咱们人脑可以找嘛,自己先创建先
mkdir /usr/local/man
mkdir /usr/local/man1??? 创建完了再来
make install??? (没报错就成功)

configure: error: libjpng.(a|so) not found

其实也是和刚才的一样.

cp -frp /usr/lib64/libpng* /usr/lib/

configure: error: Cannot find ldap libraries in /usr/lib.

cp -frp /usr/lib64/libldap* /usr/lib/

类似错误很多,方法也很多,我们得灵活应变,具体问题具体分析!

另外附一些常见的configure错误列表供参考:

configure: error: No curses/termcap library found
网上有的说法是:
--with-named-curses-libs=/usr/lib/libncursesw.so.5
其实是不对的,虽然能解决configure的错误,但是make的时候会提示错误,正确的做法应该是
yum -y install ncurses-devel
debian: apt-get install libncurses5-dev

configure: error: xml2-config not found
yum -y install libxml2-devel
debian:apt-get install libxml2-dev

configure: error: Cannot find OpenSSL's
yum -y install openssl-devel

configure: error: libjpeg.(a|so) not found
yum -y install gd
yum -y install gd-devel
debian:apt-get install libjpeg-dev

configure: error: libpng.(a|so) not found.
apt-get install libpng12-dev

configure: error: cannot find output from lex; giving up
yum -y install flex

configure: error: mod_deflate has been requested but can not be built due to prerequisite failures
yum -y install zlib-devel openssl-devel
debian:apt-get install zlib1g-dev

configure: error: libXpm.(a|so) not found.
apt-get install libxpm-dev

onfigure: error: freetype.h not found.
apt-get install libfreetype6-dev

configure: error: ...No recognized SSL/TLS toolkit detected
apt-get install libssl-dev

1) Configure: error: xml2-config not found. Please check your libxml2 installation.

Solutions :
yum install libxml2 libxml2-devel (For Redhat & Fedora)

# aptitude install libxml2-dev (For ubuntu)

2) Checking for pkg-config… /usr/bin/pkg-config
configure: error: Cannot find OpenSSL’s

Solutions :

yum install openssl openssl-devel

3) Configure: error: Please reinstall the BZip2 distribution

Solutions :
yum install bzip2 bzip2-devel

4) Configure: error: Please reinstall the libcurl distribution -
easy.h should be in /include/curl/

Solutions :
yum install curl curl-devel (For Redhat & Fedora)

# install libcurl4-gnutls-dev (For Ubuntu)

5) Configure: error: libjpeg.(also) not found.

Solutions :
yum -y install gd
yum -y install gd-devel
yum install libjpeg libjpeg-devel

6) Configure: error: libpng.(also) not found.

Solutions :
yum install libpng libpng-devel
apt-get install libpng12-dev

7) Configure: error: freetype.h not found.
Solutions :
yum install freetype-devel

Configure: error: Unable to locate gmp.h

Solutions :
yum install gmp-devel

9) Configure: error: Cannot find MySQL header files under /usr.
Note that the MySQL client library is not bundled anymore!

Solutions :
yum install mysql-devel (For Redhat & Fedora)

# apt-get install libmysql++-dev (For Ubuntu)

10) Configure: error: Please reinstall the ncurses distribution

Solutions :
yum install ncurses ncurses-devel

11) Checking for unixODBC support… configure: error: ODBC header file ‘/usr/include/sqlext.h’ not found!

Solutions :
yum install unixODBC-devel

12) Configure: error: Cannot find pspell

Solutions :
yum install pspell-devel

13) configure: error: mcrypt.h not found. Please reinstall libmcrypt.

Solutions :
yum install libmcrypt libmcrypt-devel (For Redhat & Fedora)

# apt-get install libmcrypt-dev

14) Configure: error: snmp.h not found. Check your SNMP installation.

Solutions :

yum install net-snmp net-snmp-devel

15)开启LDAP服务还需要
yum -y install openldap-devel openldap-servers openldap-clients

16)configure: error: No curses/termcap library found
网上有的说法是:
–with-named-curses-libs=/usr/lib/libncursesw.so.5
其实是不对的,虽然能解决configure的错误,但是make的时候会提示错误,正确的做法应该是
yum -y install ncurses-devel (for redhat)
apt-get install libncurses5-dev(for debian)

17)configure: error: cannot find output from lex; giving up
yum -y install flex

18)configure: error: mod_deflate has been requested but can not be built due to prerequisite failures
yum -y install zlib-devel openssl-devel
debian:apt-get install zlib1g-dev

19)configure: error: libXpm.(a|so) not found.
apt-get install libxpm-dev

?

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿