业务需求要用到 imagefttext 函数,发现GD库一开始安装时没有添加 FreeType;
call to undefined function imagettftext
因为我们需要在图片上面加水印;
只是安装 gd 库是不行的,必须安装 FreeType kuozhan扩展类库;
php提供了扩展官网;
支持php所有扩展(连这个网站搜不到的就不是php扩展);
哪里不会点哪里;
首先服务器上面必须安装php
没安装php的小伙伴可以安装PHP
这里我也把FreeType压缩包下载到了本地 点我下载
方便大家下载(活雷锋);
感受飞一般的感觉;
哈哈;
2秒过去了 .....
下载完成之后;
解压压缩包 (压缩包的正确做法);
tar -jxvf freetype-2.4.0.tar.gz
cd freetype-2.4.0
./configure --prefix=/usr/local/freetype --enable-shared
make && make install //编译及安装
10秒过去了 .....
Ok, freetype安装好后;
我们重新编译GD把freetype编译进去;
cd /usr/local/src/php-7.1.20/ext/gd //这里是我本地的位置
ll 查看一下是否存在 configure
文件夹;
这里我们需要执行一下;
/usr/local/php/bin/phpize //如果存在此文件夹 可以跳过
如果php安装的路径不是我这个路径;
还可以执行这个命令找到 phpize;
which phpize //返回phpize的路径
该phpize命令是用来为PHP扩展准备构建环境;
想详细了解的 点这里
Configuring for:
PHP Api Version: 20160303
Zend Module Api No: 20160303
Zend Extension Api No: 320160303
出现以上的字幕说明成功了;
我们再来执行;
./configure --with-freetype-dir=/usr/local/freetype
make && make install //安装及编译
ok gd库安装成功后;
接下来就可以修改 php.ini文件了;
这里我装作不知道php.ini文件在哪个地方 (其实我真的不知道);
可以执行命令;
[root@VM_0_16_centos curl]# php -i | grep php.ini
Configuration File (php.ini) Path => /usr/local/php/lib
Loaded Configuration File => /usr/local/php/lib/php.ini
编辑php.ini文件
vim /usr/local/php/lib/php.ini
在下面加上;
extension=gd.so
然后在重新启动 php;
pkill php-fpm //杀死php进程
/usr/local/php/sbin/php-fpm //启动php
进入phpinfo 说明 gd安装成功;
离人生巅峰又近了一步;
后面报错补充
Call to undefined function Intervention\Image\Gd\imagecreatefromjpeg()
让GD库支持JPEG格式图片扩展;
首先安装jpegsrc;cd /usr/local/src
目录下
wget http://www.ijg.org/files/jpegsrc.v9c.tar.gz
tar zxvf jpegsrc.v9.tar.gz
cd jpeg-9
./configure --prefix=/usr/local/jpeg
make && make instal
接下来开始重新编译gd库;
/usr/local/src/php-7.1.20/ext/gd
make clean //清除上次make产生的文件
rm -rf /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/gd.so //删除上次产生的gd.so
/usr/local/php/bin/phpize
//开始重新编译 这次增加了 with-jpeg-dir
./configure --with-php-config=/usr/local/php/bin/php-config --with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype
make && make install
然后产生了新的gd.so;
接下来重启php服务;
你的GD库从此以后就支持jpeg的图片;
感叹:程序员的生活,就是遇到问题解决问题;
本文为史大坨原创文章,转载无需和我联系,但请注明来自史大坨博客https://www.shidatuos.cn