linux 下 php+gd2+freetype+jpeg+png+zlib编译安装

事件缘起:discuz后台开启中文验证码提示说不支持freetype,但freetype貌似是需要gd2调用生效的。

于是安装gd2,安装gd2的时候顺带安装了jpeg,png,zlib

所需要的安装包都已经放置在百度云盘,下载链接http://pan.baidu.com/share/link?shareid=1837459297&uk=1778705955

接下来就是配置步骤:

1、安装zlib

tar xf zlib-1.2.7.tar.gz

cd zlib-1.2.7

./configure --prefix=/usr/local/zlib

make

make install

2、安装 jpeg

tar xf jpegsrc.v9a.tar.gz

cd jpeg-9a

./configure --prefix=/usr/local/jpeg --enable-shared --enable-static

make

make install

3、安装 libpng

tar xf libpng-1.6.12.tar.gz

cd libpng-1.6.12

./configure --prefix=/usr/local/png

make

make install

4、安装freetype

tar xf freetype-2.5.3.tar.gz

cd freetype-2.5.3

./configure --prefix=/usr/local/freetype

make

make install

5、安装gd2

tar xf libgd-2.1.0.gz

cd libgd-2.1.0

./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg/ --with-png=/usr/local/png/ --with-zlib=/usr/local/zlib/ --with-freetype=/usr/local/freetype/

make

make install

(注,版本这里必须>=2.1.0,否则用php-5.6.0会报错,可能老版本的php不会报错)

6、集成PHP GD扩展到PHP里

本来想在[php目录]/ext/gd内使用phpize扩展gd模块的,但是提示没有config.m4文件

所以只能重新编译php

卸载所有跟php相关的包:

rpm -qa|grep php
使用rpm -e 加包名
rpm -e php-4.3.9-3.15

重新编译php:

tar xf php-5.6.0.tar.gz

cd php-5.6.0

./configure --prefix=/usr/local/php-5.6.0 --with-config-file-path=/usr/local/php-5.6.0/etc --with-config-file-scan-dir=/usr/local/php-5.6.0/etc/conf.d --enable-fpm --with-pear --with-curl --with-gd=/usr/local/gd2 --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/png --with-freetype-dir=/usr/local/freetype --with-zlib-dir=/usr/local/zlib --with-iconv --with-mcrypt --with-mhash --with-zlib --with-xmlrpc --with-xsl --with-openssl --with-mysql --with-mysqli --with-pdo-mysql --with-bz2 --with-gettext --with-xpm-dir=/usr/lib64/

make && make install

最后,重启php-fpm以重载php:

php-fpm 关闭:
kill -INT `cat /usr/local/php-5.6.0/var/run/php-fpm.pid`
php-fpm 重启:
kill -USR2 `cat /usr/local/php-5.6.0/var/run/php-fpm.pid`

,刷新phpinfo,看到有支持相关模块的话就是成功了。

时间: 2024-12-06 11:14:50

linux 下 php+gd2+freetype+jpeg+png+zlib编译安装的相关文章

在Linux下使用MinGW静态交叉编译带有zlib的libcurl(包括交叉编译openssl,即--cross-compile-prefix=i686-w64-mingw32- mingw)

在Linux下使用MinGW静态交叉编译带有zlib的libcurl libcurl是一个跨平台的.易用的.强大的网络库.在大部分Linux发行版中都有编译好的二进制包可供使用,Mac系统更是将其作为了一个核心部件.但是在Windows平台上却需要手工编译,更不必说一些有特殊洁癖的人(比如说我)还特别讨厌多出来几个DLL,非要静态链接不可.本文作为我两个晚上折腾经历的一个小小总结,讲解如何在Linux下使用MinGW编译给Windows使用的libcurl静态库. STEP1 安装MinGW编译

Linux下C语言执行过程(预处理,编译,汇编,链接,执行)

1.C语言的执行过程包括5个步骤:分别是:预处理,编译,汇编,链接,执行 第一步:编写C源代码,截图如下: 2.预处理,命令为:gcc -E variable.c -o variable.i(这步的作用是文件的展开和宏替换),生成的文件类型是.i类型的. 3.编译:命令为:gcc -S variable.i -o variable.s,这里的.s文件就成了会变语言,截图如下: 4.汇编,命令是:gcc -c variable.s -o variable.o,截图如下: 5,链接:命令:gcc -

CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动

CentOS6.7下使用非root用户(普通用户)编译安装与配置mysql数据库并使用shell脚本定时任务方式实现mysql数据库服务随机自动启动1.关于mysql?MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司.MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性.特点: Mysql是开源的,所以你不需要支付额外的费用.Mysql支持大型的数据库.可以处理拥有上千

linux下的开源移动图像监测程序--motion编译与配置

前几天在网上偶然看到一篇博客,是利用linxu下的开源的motion搭建嵌入式视频动态监控系统,感觉很好很强大于,是就想自己编译移植一下试试. 所谓移动图像监测,简单来说就是利用摄像头定点监测某个区域,当有移动物体经过时,摄像头便自动抓拍(要监测多大物体.按拍照速率都是可调的),并把拍到的图像存储在指定目录,实现无人监控功能. motion 是一套免费开源的移动图像监测程序(详见http://www.lavrsen.dk/foswiki/bin/view/Motion) 先去下载源代码:http

linux下的开源移动图像监测程序--motion编译与配置【转】

本文转载自:http://www.cnblogs.com/qinyg/p/3355707.html 前几天在网上偶然看到一篇博客,是利用linxu下的开源的motion搭建嵌入式视频动态监控系统,感觉很好很强大于,是就想自己编译移植一下试试. 所谓移动图像监测,简单来说就是利用摄像头定点监测某个区域,当有移动物体经过时,摄像头便自动抓拍(要监测多大物体.按拍照速率都是可调的),并把拍到的图像存储在指定目录,实现无人监控功能. motion 是一套免费开源的移动图像监测程序(详见http://ww

Linux下光盘yum源搭建及简单软件安装

Linux下软件安装包常见的有源码包.二进制包, 软件安装一般有以下几种方式:RPM包安装.yum安装.以及脚本安装. 严格来说,脚本安装并不是独立的一种安装方式,只是对Linux字符界面下软件复杂安装的一个简化版,将复杂的安装命令写在了一个脚本文件中,例如Nginx的安装.fail2ban<采用python脚本>的安装.有兴趣的话可以去查查资料. 接下来就开始正式的yum源的搭建. 环境:Windows 7环境下VMware10,Linux--->CentOS6.5 首先需要说明的是,

linux下怎么卸载自带的JDK和安装想要的JDK

安装linux系统后,系统有自带jdk的版本,因为系统中的有些软件需要使用此环境.但时候我们安装eclipse和tomcat的时候,使用此jdk是不行的.这时候我们就需要安装我们自己下载的jdk,但在此之前我们需要卸载系统自带的jdk. 工具/原料 CentOs6.x本版的linux系统 jdk,下载网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html ,选择你需要的版本进行下

Linux下python3、virtualenv、Mysql、redis安装配置

一.在Linux安装python解释器 1.下载python3源码包 cd /opt/ wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz 2.下载python3编译的依赖包(复制粘贴下载即可) yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel read

linux下yum程序包管理及源码安装

1.yum仓库中的repodata目录中元数据文件: primary.xml.gz:代表所有RPM包的列表和依赖关系以及每个RPM安装生成的文件列表: filelists.xml.gz:代表当前仓库中所有RPM包的所有文件列表: other.xml.gz:代表额外信息,RPM包的修改日志: repomd.xml记录的是上面三个文件的时间戳和校验和: comps*.xml: RPM包分组信息 2.yum定义repo文件 [Repo_ID] name=Description baseurl= ftp