php重新編譯,gd擴充套件支援jpeg檔案
阿新 • • 發佈:2019-01-08
晚上寫東西的時候,報了一個錯誤:
Call to undefined function imagecreatefromjpeg()
沒有開啟 jpeg 支援?原來是預設安裝的 gd 擴充套件預設不支援 jpeg。
1、那麼,來新增 jpeg 格式檔案支援吧。
#下載jpeg擴充套件包 wget http://www.ijg.org/files/jpegsrc.v8b.tar.gz #解壓縮擴充套件包 tar -zxvf jpegsrc.v8b.tar.gz #安裝 cd jpeg-8b ./configure --prefix=/usr/local/php-kuozhan/jpeg --enable-shared --enable-static make && make install
2、完成第一步之後,如果我們去 php 原始碼目錄 ext/gd 下 使用 phpize重新編譯GD庫擴充套件生成gd.so,在php.ini中加入extension=gd.so後重啟php,會報錯"PHP Warning: Module 'gd' already loaded in Unknown on line 0"。由於編譯安裝時指定的擴充套件屬於靜態擴充套件,如果修改擴充套件就需要重新編譯安裝了。
3、來到 php 原始碼目錄,進行重新編譯安裝。
#先停止php-fpm、nginx pkill -9 php-fpm /usr/local/nginx/sbin/nginx -s stop #先清除殘留的快取 make clean #重新進行預編譯,注意這一步最後加上了 第一步安裝 jpeg檔案支援 ./configure --prefix=/usr/local/php \ --with-gd \ --with-freetype-dir \ --enable-gd-native-ttf \ --enable-mysqlnd \ --with-pdo-mysql=mysqlnd \ --enable-xml \ --with-openssl \ --with-mcrypt \ --enable-mbstring \ --enable-zip \ --enable-fpm \ --with-jpeg-dir=/usr/local/php-kuozhan/jpeg #安裝 make && make install
4、開啟 fpm、nginx
/usr/local/php/sbin/php-fpm
/usr/local/nginx/sbin/nginx
5、檢視phpinfo
說明已經支援 jpeg 檔案了。
thanks~