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

一切通过yum搞定。

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标识的版本。

yum install libpng libpng-devel libjpeg-turbo libjpeg-turbo-devel freetype freetype-devel gd

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

make clean 

再重新make一下:

‘./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目录了。

GD Support enabled
GD Version bundled (2.1.0 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.4.11
GIF Read Support enabled
GIF Create Support enabled
JPEG Support enabled
libJPEG Version 6b
PNG Support enabled
libPNG Version 1.5.13
WBMP Support enabled
XBM Support enabled

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

[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)

以上这篇Centos7下PHP安装gd库的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。