php初記

來源:互聯網
上載者:User
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

?

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.