在一个新的amazon linux2框中,我运行了以下命令:
sudo amazon-linux-extras install php7.2
sudo yum install php-gd
但是当我跑步时:
php -r 'var_dump(gd_info());'
我得到:
array(13) {
["GD Version"]=>
string(26) "bundled (2.1.0 compatible)"
["FreeType Support"]=>
bool(true)
["FreeType Linkage"]=>
string(13) "with freetype"
["GIF Read Support"]=>
bool(true)
["GIF Create Support"]=>
bool(true)
["JPEG Support"]=>
bool(true)
["PNG Support"]=>
bool(true)
["WBMP Support"]=>
bool(true)
["XPM Support"]=>
bool(true)
["XBM Support"]=>
bool(true)
["WebP Support"]=>
bool(false)
["BMP Support"]=>
bool(true)
["JIS-mapped Japanese Font Support"]=>
bool(false)
}
我不知道要使WebP支持为真我需要做什么
您可能需要使用WebP支持从源代码编译gd.so。
GD已经存在,WebP支持丢失了。
可能重复:How to compile php to enable webp support?
您也可以使用免费的图像服务来为您完成这项工作。
甚至离线转换它们:https://www.imghaste.com/converter
是,我必须编译gd
首先我删除了旧版本sudo yum remove php-gd
然后检查php版本php -v
获取srcsudo wget https://github.com/php/php-src/archive/php-7.2.3.tar.gz
sudo tar zxf php-7.2.3.tar.gz
cd php-src-php-7.2.3/ext/gd/
我必须安装这些sudo yum install php-devel gd-devel libwebp-devel libjpeg-turbo-devel
sudo yum groupinstall "Development Tools"
sudo yum install libwebp-devel libjpeg-devel libpng-devel zlib-devel libXpm-devel
sudo phpize
sudo ./configure --with-jpeg-dir --with-freetype-dir --with-xpm-dir --with-webp-dir --with-png-dir --with-zlib-dir
sudo make
sudo cp modules/gd.so /usr/lib64/php/modules/
然后编辑php.ini以启用sudo nano /etc/php.ini
添加extension=gd
然后可用php -m
php -r 'var_dump(gd_info());'
array(13) {
["GD Version"]=>
string(26) "bundled (2.1.0 compatible)"
["FreeType Support"]=>
bool(true)
["FreeType Linkage"]=>
string(13) "with freetype"
["GIF Read Support"]=>
bool(true)
["GIF Create Support"]=>
bool(true)
["JPEG Support"]=>
bool(true)
["PNG Support"]=>
bool(true)
["WBMP Support"]=>
bool(true)
["XPM Support"]=>
bool(true)
["XBM Support"]=>
bool(true)
["WebP Support"]=>
bool(true)
["BMP Support"]=>
bool(true)
["JIS-mapped Japanese Font Support"]=>
bool(false)
}