YiluPHP
这家伙很懒,什么都没有留下...

经验 centos下为php添加gd扩展

浏览数 162633
gd库可用于图像处理,常用于生成验证码图片、二维码、给裁剪图片等。如果没有gd库,调用imagecreatetruecolor函数时会报错,提示找不到函数gecreatetruecolor()

Fatal error: Call to undefined function BaconQrCode\Renderer\Image\imagecreatetruecolor() in /data/web/ /ww.qq.com/vendor/bacon/bacon-qr-code/src/BaconQrCode/Renderer/Image/Png.php on line 42

下面是安装步骤

第一步:

安装需要用到的库

yum -y install libjpeglibjpeg-devel libpng libpng-devel freetype freetype-devel

第二步:

进入到php的源码目录下的ext/gd目录(这里是源码目录,不是安装目录,注意区别)

1.首先执行:{$php_indtall_dir}/bin/phpize

注:这里的{$php_indtall_dir}指的是php的安装目录,如果安装到了/usr/local/php,那就执行/usr/local/php/bin/phpize,这里是要生成.configure编译文件的

2.执行:./configure --with-png-dir --with-freetype-dir --with-jpeg-dir --with-gd --with-php-config=/usr/local/php/bin/php-config

注:这里的--with-php-config目录根据自己php的安装路径配置

如果编译有报错,见最后面的错误解决方法。

3.执行:make && make install

第三步:修改php.ini

添加:extension=gd.so

第四步:

重启php-rpm,再重启下nginx或是apache,这里就看到php_info页面有gd扩展了^_^
--------------------- 
作者:linux凯 
来源:CSDN 
原文:https://blog.csdn.net/chenghuikai/article/details/50904152 
版权声明:本文为博主原创文章,转载请附上博文链接!


如果编译有报以下错误
configure: error: jpeglib.h not found.

解决方案如下:
[root@cac3 php-5.6.22]# rpm -qa | grep libjpeg 
libjpeg-turbo-1.2.90-5.el7.x86_64
[root@cac3 php-5.6.22]# yum -y install libjpeg-devel
已加载插件:langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
正在解决依赖关系
--> 正在检查事务
---> 软件包 libjpeg-turbo-devel.x86_64.0.1.2.90-5.el7 将被 安装

--> 解决依赖关系完成

再次编译即可成功。



我来说说