linux/windows系统如何安装php-gd扩展库

简介: gd扩展是一个开源的图像处理库,它通过提供一系列用来处理图片的API,使其可以用来创建图表、图形、缩略图以及其他图像的处理操作。本文我们一起分享如何完整晚装PHP的gd扩展。

昨天有位客户咨询我一个问题,他在使用然之OA 系统时涉及到图片显示时提示下面错误窗口。看到这个错误提示,我们肯定都会想到是不是PHP的gd库未安装,但是这位朋友说他用phpinfo查看了下PHP环境,发现gd扩展已存在,而且问题依旧存在,所以才头疼问题出在哪里。下面是这位朋友给我的截图:



看到这里,可能一些细心的朋友已经发现问题所在了,很明显,这位用户的gd扩展安装得不完整。这里我先直接给大家展示gd库完整安装后的截图:


所以我们在检查PHP环境,要看一下扩展是否安装齐全、完整,针对上面的问题,本文我们将和大家一起分享linux/windows系统中如何完整安装php-gd扩展。

linux系统篇

1.CentOS系统

关于GD扩展

gd扩展是一个开源的图像处理库,它通过提供一系列用来处理图片的API,使其可以用来创建图表、图形、缩略图以及其他图像的处理操作。gd扩展支持JPG、PNG、GIF等常见的图片格式,所以在安装php-gd扩展之前,我们需要安装libpng、jpegsrc、freetype这三款软件。下面安装步骤中,具体的路径设置大家根据自己的实际情况进行调整。


安装 freetype



wget http://ftp.twaren.net/Unix/NonGNU/freetype/freetype-2.5.5.tar.gz
tar -xf freetype-2.5.5.tar.gz
cd freetype-2.5.5
./configure --prefix=/usr/local/freetype
make && make install

安装jpegsrc


wget http://www.ijg.org/files/jpegsrc.v9.tar.gz
tar zxvf jpegsrc.v9.tar.gz
cd jpeg-9
./configure --prefix=/usr/local/jpeg
make && make install

安装libpng


wget http://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.31/libpng-1.6.31.tar.gz
tar zxvf libpng-1.6.31.tar.gz 
cd libpng-1.6.31
./configure --prefix=/usr/local/libpng
make && make install

安装GD扩展


不再重新编译php,还是用phpize添加新扩展,注意不要漏掉make clean这一步。


 cd /data/php-5.6.14/ext/gd/
 make clean
 /usr/local/php/bin/phpize
 ./configure --with-php-config=/usr/local/php/bin/php-config --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype
 make && make install



此时在/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/目录下有出现了gd.so文件。


接着修改php.ini文件 添加一行


extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/gd.so


最后重启服务,查看php-gd扩展信息即可。


2.ubuntu系统



sudo apt-get install php5-gd 

注意不是php-gd而是php5-gd。
最后重启服务


windows篇



修改PHP配置文件php.ini:


将php.ini文集中的extension=php_gd2.dll  前面的;去掉即可。

最后重启服务。


小结

本文我们一起分享了如何在linux(centos、ubuntu)/Windows系统中完整安装php-gd扩展,以解决系统应用使用过程中诸如imagecreatefromjpeg()函数无法调用的问题。如果大家在安装过程中有其他问题欢迎和大家一起讨论交流,我们共同学习,共同进步。


更多技术文章,欢迎关注微信公众号


目录
相关文章
|
28天前
|
安全 网络协议 Linux
telnet在windows和linux上的使用方法
Telnet是一个简单且强大的网络工具,广泛用于远程管理和网络诊断。尽管存在安全风险,但在受控环境中,Telnet仍然是一个非常有用的工具。通过本文的介绍,您应该能够在Windows和Linux系统上安装并使用Telnet进行各种网络操作。
116 18
|
1月前
|
安全 Ubuntu Linux
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
53 9
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
|
1月前
|
存储 编译器 Linux
动态链接的魔法:Linux下动态链接库机制探讨
本文将深入探讨Linux系统中的动态链接库机制,这其中包括但不限于全局符号介入、延迟绑定以及地址无关代码等内容。
643 23
|
1月前
|
Ubuntu 网络协议 Linux
快速部署WSL(Windows Subsystem for Linux)
WSL提供了一种轻量级的方法,使开发者能够在Windows上无缝运行Linux环境。通过本文介绍的步骤,可以快速安装、配置和使用WSL,以满足开发和测试的需求。
121 8
|
1月前
|
PHP 计算机视觉 UED
Buzz库:PHP图像处理中的异步图像下载和保存
Buzz库:PHP图像处理中的异步图像下载和保存
|
1月前
|
自然语言处理 安全 Java
Nexpose 7.0.1 for Linux & Windows - 漏洞扫描
Nexpose 7.0.1 for Linux & Windows - 漏洞扫描
49 6
|
1月前
|
关系型数据库 MySQL Linux
MySQL数据库下载安装教程(Windows&Linux)
本文档详细介绍了MySQL的安装步骤,包括安装前的准备工作、下载安装包、Windows和Linux系统下的具体安装流程,以及如何配置MySQL服务、设置环境变量、启动服务和连接数据库等关键操作。
|
2月前
|
SQL 安全 PHP
PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全
本文深入探讨了PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全。
85 4
|
2月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
104 4
|
5月前
|
Ubuntu Linux 虚拟化
安装Windows Linux 子系统的方法:适用于windows 11 版本
本文提供了在Windows 11系统上安装Linux子系统(WSL)的详细步骤,包括启用子系统和虚拟化功能、从Microsoft Store安装Linux发行版、设置WSL默认版本、安装WSL2补丁,以及完成Ubuntu的首次安装设置。
1517 2