首页 后端开发 php教程 php安装gd库与phpize的用法

php安装gd库与phpize的用法

Jul 25, 2016 am 08:55 AM

  1. [root@jbxue achievo]# php -v
  2. PHP 5.3.6 (cli) (built: Aug 19 2011 19:35:20)
  3. Copyright (c) 1997-2011 The PHP Group
  4. Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
复制代码

二,phpize 1,什么是phpize phpize用来扩展php扩展模块,通过phpize可以建立php的外挂模块。

在安装php时,需要用到phpize:

  1. './configure' '--prefix=/usr/local/php' '--with-mysql=/usr/local/mysql' '--with-zlib-dir' '--with-freetype-dir=/usr' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--with-gd' '--enable-ftp' '--with-iconv' '--with-gettext' '--with-curl' '--enable-fastcgi' '--with-openssl'
复制代码

后面的参数是需要的模块,有时需要再添加一些模块,又不想重新编译php,此时即可用phpize来帮助外挂模块。

2,如何使用phpize? 当php编译完成后,php的bin目录下会有phpize这个脚本文件 。 在编译要添加的扩展模块之前,执行以下phpize就可以了;

  1. # 如果在编译的时候忘记添加某些模块,可以使用这种办法来重新编译添加!
  2. # 首先,进入PHP目录(未编译)的扩展目录
  3. cd /home/soft/php-5.2.14/ext/ftp/
  4. # 调用phpize程序生成编译配置文件
  5. # find / -name phpize
  6. /usr/local/php/bin/phpize
  7. Configuring for:
  8. PHP Api Version: 20041225
  9. Zend Module Api No: 20060613
  10. Zend Extension Api No: 220060519
  11. # 编译扩展库
  12. /configure –with-php-config=/usr/local/php/bin/php-config
  13. make
  14. # make成功执行后,生成的扩展库文件在当前目录的 modules 子目录下
  15. # 编辑php.ini文档,找到extension_dir的目录,将编译好的扩展文件复制到extension下面
  16. vim /usr/local/php/etc/php.ini
  17. # 第491行
  18. # extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/”
  19. cp ftp.so /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/
  20. # 在php.ini的添加扩展库位置,设置要添加的扩展库。
  21. # 在612处添加 extension=ftp.so
  22. # 重启webservice
复制代码

------------------------------------------------------ 181的php源码位置在 /root/software/php-5.3.6

尝试在以上平台安装个Xenforo论坛,安装开始时提示以下信息: The following errors occurred while verifying that your server can run XenForo: * The required PHP extension MySQLi could not be found. Please ask your host to install this extension. * The required PHP extension GD could not be found. Please ask your host to install this extension.

由于PHP是源码编译安装的,所以以上两个扩展都没安装,下面是为PHP添加这两个扩展的过程:

一、安装GD扩展 1.下载安装GD库扩展所需源码包(可点击源码包直接下载) gd-2.0.35.tar.gz http://www.libgd.org/releases/ jpegsrc.v8b.tar.gz http://www.ijg.org/ libpng-1.5.0.tar.gz http://sourceforge.net/projects/libpng/ freetype-2.4.4.tar.gz http://sourceforge.net/projects/freetype/ zlib-1.2.3.tar.gz

2.分别编译安装各个源码包 1)、安装zlib

  1. tar zxvf zlib-1.2.3.tar.gz
  2. cd zlib-1.2.3
  3. ./configure
  4. make
  5. make install
复制代码

2)、安装libpng

  1. tar zxvf libpng-1.5.0.tar.tar
  2. cd libpng-1.5.0
  3. cd scripts
  4. mv makefile.linux ../makefile
  5. cd ..
  6. make
  7. make install
复制代码

3)、安装freetype

  1. tar zxvf freetype-2.4.4.tar.gz
  2. cd freetype-2.4.4
  3. ./configure
  4. make
  5. make install
复制代码

4)、安装Jpeg

  1. tar zxvf jpegsrc.v8b.tar.gz
  2. cd jpeg-8b
  3. ./configure –enable-shared
  4. make
  5. make test
  6. make install
复制代码

注意,这里configure一定要带–enable-shared参数,不然,不会生成共享库。

5)、安装GD库

  1. tar zxvf gd-2.0.33.tar.gz
  2. cd gd-2.0.33
  3. ./configure –with-png –with-freetype –with-jpeg
  4. make install
复制代码

3,重新编译安装PHP(即是在以前编译PHP的参数后面再加上以上安装的相关参数) cd php-5.3.4 (进入以前的PHP源码目录)

  1. ./configure –prefix=/opt/php –with-mysql=/opt/mysql –with-apxs2=/opt/apache/bin/apxs –enable-track-vars –enable-force-cgi-redirect –with-config-file-path=/opt/php/etc –with-gd –enable-gd-native-ttf –with-zlib –with-png –with-jpeg –with-freetype –enable-sockets
复制代码

绿色字体部份是以前安装PHP时所加的参数:

  1. make
  2. make install
复制代码

这样GD库扩展便安装完毕,重启Apache,查看PHP信息测试页便可看到gd项;

二、安装MySQLi扩展 在这里要用到phpize,phpize 命令是用来准备 PHP 扩展库编译环境,一般在安装好PHP后,会在安装PHP的bin目录下找到这个命令。 如果在执行phpize命令后出现找不到autoconf之类的提示,请安装好autoconf后再次执行。 以下指令的目录路径,请网友们根据自己系统的实际情况作相应修改。 PHP源码包文件夹下的EXT文件夹就是放置着目前版本的可用扩展,CD进去看看哪些需要?应该看到mysqli文件夹了。

  1. cd /opt/software/php-5.3.4/ext/mysqli
复制代码

在当前目录下执行phpize

  1. [root@jbxue mysqli]#/opt/php/bin/phpize
  2. Configuring for:
  3. PHP Api Version: 20090626
  4. Zend Modeule Api No: 20090626
  5. Zend Extension Api No: 220090626
  6. [root@jbxue mysqli]#./configure –prefix=/opt/mysqli –with-php-config=/opt/php/bin/php-config –with-mysqli=/opt/mysql/bin/mysql_config
  7. [root@jbxue mysqli]#make
  8. [root@jbxue mysqli]#make install
复制代码

安装完成后,会有提示扩展所在目录路径,例如: /opt/php/lib/php/extensions/no-debug-zts-20090626 所需的mysqli.so便会在此目录下。

接下来修改/opt/php/etc/下的php.ini文件,加入mysqli扩展:

  1. extension=/opt/php/lib/php/extensions/no-debug-zts-20090626/mysqli.so
复制代码

重启Apache服务,再次打开PHP信息页,即可看到MySQLi项。



本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

在PHP API中说明JSON Web令牌(JWT)及其用例。 在PHP API中说明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

解释PHP中晚期静态结合的概念。 解释PHP中晚期静态结合的概念。 Mar 21, 2025 pm 01:33 PM

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸

框架安全功能:防止漏洞。 框架安全功能:防止漏洞。 Mar 28, 2025 pm 05:11 PM

文章讨论了框架中的基本安全功能,以防止漏洞,包括输入验证,身份验证和常规更新。

自定义/扩展框架:如何添加自定义功能。 自定义/扩展框架:如何添加自定义功能。 Mar 28, 2025 pm 05:12 PM

本文讨论了将自定义功能添加到框架上,专注于理解体系结构,识别扩展点以及集成和调试的最佳实践。

如何用PHP的cURL库发送包含JSON数据的POST请求? 如何用PHP的cURL库发送包含JSON数据的POST请求? Apr 01, 2025 pm 03:12 PM

使用PHP的cURL库发送JSON数据在PHP开发中,经常需要与外部API进行交互,其中一种常见的方式是使用cURL库发送POST�...

描述扎实的原则及其如何应用于PHP的开发。 描述扎实的原则及其如何应用于PHP的开发。 Apr 03, 2025 am 12:04 AM

SOLID原则在PHP开发中的应用包括:1.单一职责原则(SRP):每个类只负责一个功能。2.开闭原则(OCP):通过扩展而非修改实现变化。3.里氏替换原则(LSP):子类可替换基类而不影响程序正确性。4.接口隔离原则(ISP):使用细粒度接口避免依赖不使用的方法。5.依赖倒置原则(DIP):高低层次模块都依赖于抽象,通过依赖注入实现。

会话如何劫持工作,如何在PHP中减轻它? 会话如何劫持工作,如何在PHP中减轻它? Apr 06, 2025 am 12:02 AM

会话劫持可以通过以下步骤实现:1.获取会话ID,2.使用会话ID,3.保持会话活跃。在PHP中防范会话劫持的方法包括:1.使用session_regenerate_id()函数重新生成会话ID,2.通过数据库存储会话数据,3.确保所有会话数据通过HTTPS传输。

See all articles