前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Centos7下PHP安装gd库的实例讲解

Centos7下PHP安装gd库的实例讲解

作者头像
习惯说一说
修改2019-07-25 10:09:03
3.6K0
修改2019-07-25 10:09:03
举报

下面小编就为大家分享一篇Centos7下PHP安装gd库的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

Centos7下安装php, 或php的gd库支持,都是很简单的。

一切通过yum搞定。

代码语言:javascript
复制
yum install php-gd

以上命令就搞定php-gd的支持,快快看看phpinfo是否支持了?

可是,如果需要采用不同版本的php时,那就是相当的麻烦,经过摸索,笔者找到了一个较为简单的方式。

由于需要与系统原生版本共存多个php版本,那么你要求的版本必须采用源码编译。(如果有其他办法,请记得回复告知一下我)

那么,编译php-gd的支持,网上大多都是通过编译freetype, libpng, libjpeg…好复杂,笔者通过一一尝试,发现还是不成功!!!!后来发现,自己编译的gd库没有包含jpeg和libpng的支持。

(通过查看自己编译的动态库文件的依赖关系ldd libgd.so.2)

注意:如果通过自己编译源码的方式,你成功的在源码版本的php中看到了gd支持png,那么恭喜你,你太幸运了。

下面来说说我的方法:

尽可能的使用系统的库,或者yum源可以安装的库,比如gd, libpng, libjpeg, libfreetype…一切,centos的源都已经准备好,我们只是希望一个不同版本的php而已。由于我们需要源码编译php,所以需要安装对应的源码版本,及带devel标识的版本。

代码语言:javascript
复制
yum install libpng libpng-devel libjpeg-turbo libjpeg-turbo-devel freetype freetype-devel gd

在php源码目录下:如果出现未定义gdXXX函数错误,需要clean一下编译的结果。

代码语言:javascript
复制
make clean

再重新make一下:

代码语言:javascript
复制
‘./configure' ‘–with-mysql' ‘–with-apxs2=/usr/local/apache2/bin/apxs' ‘–with-curl' ‘–with-gd' ‘–with-jpeg-dir' ‘–with-png-dir' ‘–with-freetype-dir'

注意:这里我们不需要指定具体的gd, jpeg, png, freetype目录的位置,直接采用系统目录下的版本(省时省力哦)。

如此安装后,gd库就按照ok了,新生产的libphp5.so文件已经安装到了指定的apache的moduls目录了。

代码语言:javascript
复制
GD Support enabledGD Version bundled (2.1.0 compatible)FreeType Support enabledFreeType Linkage with freetypeFreeType Version 2.4.11GIF Read Support enabledGIF Create Support enabledJPEG Support enabledlibJPEG Version 6bPNG Support enabledlibPNG Version 1.5.13WBMP Support enabledXBM Support enabled

为什么我们可以省力呢?应为centos安装的gd库已经把jpeg, png等库都已经连接好了。通过ldd liggd.so.2 就可以证明:

代码语言:javascript
复制
[root@iZ25mdbcou0Z ~]# ldd /usr/lib64/libgd.so.2 linux-vdso.so.1 => (0x00007fff591fe000) libXpm.so.4 => /lib64/libXpm.so.4 (0x00007f91ed0c8000) libX11.so.6 => /lib64/libX11.so.6 (0x00007f91ecd8a000) libjpeg.so.62 => /lib64/libjpeg.so.62 (0x00007f91ecb34000) libfontconfig.so.1 => /lib64/libfontconfig.so.1 (0x00007f91ec8f8000) libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f91ec652000) libpng15.so.15 => /lib64/libpng15.so.15 (0x00007f91ec426000) libz.so.1 => /lib64/libz.so.1 (0x00007f91ec210000) libm.so.6 => /lib64/libm.so.6 (0x00007f91ebf0e000) libc.so.6 => /lib64/libc.so.6 (0x00007f91ebb4c000) libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f91eb92b000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f91eb727000) libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f91eb4fc000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f91eb2e0000) /lib64/ld-linux-x86-64.so.2 (0x00007f91ed52b000) libXau.so.6 => /lib64/libXau.so.6 (0x00007f91eb0dc000)

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档