下面小編就為大家分享一篇PHP GD庫添加freetype拓展的方法,具有很好的參考價(jià)值,希望對大家有所幫助,一起跟隨小編過來看看吧。
背景:業(yè)務(wù)需求要用到 imagefttext 函數(shù),發(fā)現(xiàn)GD庫一開始安裝時(shí)沒有添加 FreeType
linux版本 centos 6.6
安裝流程(由于服務(wù)器為分布式內(nèi)網(wǎng)服務(wù)器,無法使用yum安裝,以下均為下載資源包后的編譯安裝):
安裝freetype
解壓freetype-2.3.9.tar.gz
編譯安裝
./configure --enable-static --enable-shared (沒有指定prefix, .h文件默認(rèn)安裝到 /usr/local/include, .a|.so文件默認(rèn)安裝到 /usr/local/lib內(nèi) 其他資源包的安裝如果沒有指定目錄也是一樣到這個(gè)位置)
make && make install
確認(rèn)freetype 安裝成功后重新編譯安裝GD庫,添加freetype 支持
安裝gd庫,版本2.0.35
由于之前有安裝記錄,建議先make clean ,否則可能導(dǎo)致安裝失敗
./configure --enable-shared --with-jpeg=/usr/local/include/ --with-freetype=/usr/local/ --with-png=/usr/local/include/(這里要注意的是--with-freetype=/usr/local/的路徑一開始寫的是 /usr/local/lib,結(jié)果一直引入freetype失敗,估計(jì)因?yàn)轭^文件不在這個(gè)目錄內(nèi),改為上一級目錄后引入成功)
確認(rèn) Support for Freetype 2.x library: yes
make && make install
確認(rèn)安裝成功后重新編譯安裝PHP的gd拓展
php版本5.5.38
單獨(dú)安裝gd拓展模塊需要cd 到 php-5.5.38/ext/gd
執(zhí)行 phpize 生成編譯文件,如果系統(tǒng)沒有引入phpize,這個(gè)文件在PHP安裝目錄下的bin中
在這里一定要先執(zhí)行make clean,這次安裝了8臺(tái)服務(wù)器,沒有先執(zhí)行make clean的100%沒有安裝成功,都沒有添加到freetype support
./configure --with-php-config=/opt/php5.5.38/bin/php-config --with-jpeg-dir --with-png-dir --with-freetype-dir --with-zlib-dir --with-gd
確認(rèn)freetype 2 在編譯中已被添加
make && make install
確認(rèn)新生成的.so文件是否跟php.ini中原來引入的路徑相同,如果不同需要修改php.ini 中的extension
安裝成功后重啟php-fpm
ps axu |grep php |grep -v 'grep'|awk '{print $2}'|xargs kill -9
/php5.5.38/sbin/php-fpm
重啟成功后查看phpinfo中的gd是否包含
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.3.9
finished
以上這篇PHP GD庫添加freetype拓展的方法就是小編分享給大家的全部內(nèi)容了。
新聞熱點(diǎn)
疑難解答
圖片精選