PHP的安裝雖然有時候很簡單,但是若是應用一多,咱們安裝起來就很頭痛了!常見的就是PHP插件的安裝問題最多了!php
其實無論是你是Apache類的應用仍是Nginx類的.PHP的安裝都不是很簡單,雖然網上不少configure,可是那不必定是適合你的,由於不少都直接關係着你的系統及系統版本和內核.那下面就進入正題node
首先來一個最多見的就是configure: error: libjpeg.(a|so) not foundmysql
不少人都納悶兒了,我都安裝了的,爲何就找不到呢?找不到其實就應試想到它的搜索位置裏面是沒有的,要否則纔不會說not foundsql
緣由是咱們大部分一些軟件只要rpm -qa | grep ***ubuntu
這時下面就有兩個重複的的軟件curl
[root@GFS_Server php-5.2.13]# rpm -qa | grep jpeg
libjpeg-6b-33
libjpeg-6b-33
libjpeg-devel-6b-33ide
32位和64位的都裝了。你能夠強制刪除兩個包,再重裝64位的包。rpm --allmatches --nodeps這種方法真是損系統又損你.有時候強制執行的東西也會隨便把lib中的一些包給強制刪了..因此我認爲不建議這麼作,重複就讓它重複吧,不要緊的!flex
要解決問題就是它沒找到,我安裝了的,那我得去找找看它究竟是放那裏去了ui
[root@GFS_Server php-5.2.13]# updatedb
[root@GFS_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
[root@GFS_Server php-5.2.13]# locate libjpeg.a
/usr/lib64/libjpeg.a
/data0/software/jpeg-6b/libjpeg.a
[root@GFS_Server php-5.2.13]#url
咱們在編譯的時候常常看到一個庫的文件,通常就是以*.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