CentOS單獨編譯安裝PHP gd庫擴展

單個擴展的安裝總結
服務器君一共花費了166.186 ms進行了6次數據庫查詢,努力地為您提供了這個頁面。
試試閱讀模式?希望聽取您的建議

網站的第二臺服務器跑的的環境主要是Python/Ruby,有時也需要簡單跑跑PHP腳本,所以也安裝了PHP,環境是Nginx+php-fpm,PHP是源碼編譯安裝的,所以是最小化安裝,甚至連mysqli擴展都沒有。今天需要用到GD庫,才發現沒GD庫環境,所以需要安裝這個擴展。對付單個擴展,單獨編譯動態加載是比較方便快捷的。安裝過程也比較繁雜,這個記錄一下,方便后來者。

首先說明,我的PHP是源碼編譯安裝的,可以參看 以源碼編譯的方式安裝PHP與php-fpm

先安裝 gd 前置庫 : freetype ,jpegsrc,libpng。

1. freetype

wget "http://download.savannah.gnu.org/releases/freetype/freetype-2.4.0.tar.bz2" 
tar jxvf freetype-2.4.0.tar.bz2
cd freetype-2.4.0
./configure --prefix=/usr/local/freetype && make && make install

2. jpegsrc

wget "http://www.ijg.org/files/jpegsrc.v9.tar.gz" 
tar zxvf jpegsrc.v9.tar.gz
cd jpeg-9
CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/jpeg && make && make install
mkdir -p /usr/local/jpeg/include
mkdir -p /usr/local/jpeg/lib
mkdir -p /usr/local/jpeg/bin
mkdir -p /usr/local/jpeg/man/man1

3. libpng

wget "http://downloads.sourceforge.net/project/libpng/libpng12/1.2.50/libpng-1.2.50.tar.gz?r=http%3A%2F%2Fwww.libpng.org%2Fpub%2Fpng%2Flibpng.html&ts=1376631135&use_mirror=nchc"  
tar zxvf libpng-1.2.50.tar.gz
cd libpng-1.2.50 
CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/libpng && make && make install

接下來需要cd到php源碼的 gd 目錄,否則會報 cannot find config.m4 之類的錯誤。

cd php-5.3.6
cd ext
cd gd

然后再這個目錄執行命令 /usr/local/php/bin/phpize。什么時候需要用到 phpize 呢?當我們需要再加些模塊,又不想重新編譯php,這些我們就可以用phpize了。我的PHP安裝在 /usr/local/php/ 這個目錄里,可以根據個人情況修改。

/usr/local/php/bin/phpize

現在可以進行單獨編譯安裝了:

./configure --with-php-configure=/usr/local/php/bin/php-config  --with-jpeg-dir=/usr/local/jpeg  --with-png-dir=/usr/local/libpng   --with-freetype-dir=/usr/local/freetype
或者
./configure --with-php-config=/usr/local/php/bin/php-config  --with-jpeg-dir=/usr/local/jpeg  --with-png-dir=/usr/local/libpng   --with-freetype-dir=/usr/local/freetype
make && make install

接著修改php.ini文件 在 ;extension=php_zip.dll 下面添加一行 extension=gd.so

重啟 Nginx 之后再看看是否安裝成功了。再執行 /usr/local/php/bin/php -m 查看gd模塊是否加載成功。

service nginx restart
/usr/local/php/bin/php -m

console列出:

[[email protected] gd]# /usr/local/php/bin/php -m
[PHP Modules]
Core
ctype
date
dom
ereg
fileinfo
filter
gd
……

看到gd了,說明gd庫安裝成功。

接下來只要重啟 php-fpm 即可:

killall php-fpm
/usr/local/php/sbin/php-fpm

phpinfo()一下,看看。

OK,安裝成功。

本文地址:http://www.snpmgr.live/librarys/veda/detail/2610,歡迎訪問原出處。

不打個分嗎?

轉載隨意,但請帶上本文地址:

http://www.snpmgr.live/librarys/veda/detail/2610

如果你認為這篇文章值得更多人閱讀,歡迎使用下面的分享功能。
小提示:您可以按快捷鍵 Ctrl + D,或點此 加入收藏

大家都在看

閱讀一百本計算機著作吧,少年

很多人覺得自己技術進步很慢,學習效率低,我覺得一個重要原因是看的書少了。多少是多呢?起碼得看3、4、5、6米吧。給個具體的數量,那就100本書吧。很多人知識結構不好而且不系統,因為在特定領域有一個足夠量的知識量+足夠良好的知識結構,系統化以后就足以應對大量未曾遇到過的問題。

奉勸自學者:構建特定領域的知識結構體系的路徑中再也沒有比學習該專業的專業課程更好的了。如果我的知識結構體系足以囊括面試官的大部分甚至吞并他的知識結構體系的話,讀到他言語中的一個詞我們就已經知道他要表達什么,我們可以讓他坐“上位”畢竟他是面試官,但是在知識結構體系以及心理上我們就居高臨下。

所以,閱讀一百本計算機著作吧,少年!

《UNIX編程藝術》 姜宏 (作者)

《UNIX編程藝術》主要介紹了Unix系統領域中的設計和開發哲學、思想文化體系、原則與經驗,由公認的Unix編程大師、開源運動領袖人物之一Eric S. Raymond傾力多年寫作而成。包括Unix設計者在內的多位領域專家也為本書貢獻了寶貴的內容。《UNIX編程藝術》內容涉及社群文化、軟件開發設計與實現,覆蓋面廣、內容深邃,完全展現了作者極其深厚的經驗積累和領域智慧。

更多計算機寶庫...

燃烧吧足球登陆