CentOS下安装libjpeg库及编译GD库
GD库明明安装了,可处理图片的时候还是报错 Fatal error: Call to undefined function imagecreatefromjpeg() 。PHP安装后,默认的gd库不支持jpg,只支持gif、png、bmp。让php的GD库支持处理jpg图片,需要安装libjpeg库。
解决方法
第一步、安装libjpeg库
- wget http://www.ijg.org/jpegsrc.v8c.tar.gz
- tar zxvf jpegsrc.v8c.tar.gz
- cd jpeg-8c
- ./configure --enable-shared
- make && make install
如果上面的http://www.ijg.org/jpegsrc.v8c.tar.gz失效了,可以到 http://www.ijg.org 找最新的下载地址。
注意:这里的configure一定要带--enable-shared参数,不然不会生成共享库libjpeg.so
第二步、重新编译GD库
下载PHP的完整源码包,源码包里包含有Mcrypt扩展源码
http://cn.php.net/releases/ 里找到自己服务器PHP版本的源码包,使用php -v,可以直接查看自己的PHP版本
- wget http://museum.php.net/php5/php-5.3.3.tar.bz2
- tar -xjvf php-5.3.3.tar.bz2
- cd php-5.3.3/ext/gd
- phpize
- ./configure --with-php-config=/usr/bin/php-config --with-jpeg-dir=/usr/local/lib
- make && make install
/usr/local/lib是libjpeg.so的位置
如果报configure: error: png.h not found.,请尝试
- yum install libpng
- yum install libpng-devel
注意:with-php-config填写你的服务器的php-config的路径,一般在/usr/bin/php-config
执行 whereis php-config或 which php-config查找 php-config的位置
修改php.ini
在php.ini加入extension=gd.so
重启php-fpmservice php-fpm restart
如果提示:Warning: Module 'gd' already loaded
你需要把之前编译的php删除掉,重新编译安装php
- ./configure --enable-fpm --prefix=/usr/local/services/php --with-mysql=/usr/local/services/mysql --with-config-file-path=/usr/local/services/php/etc
- --with-curl --with-pdo-mysql=mysqlnd --enable-mbstring --enable-sockets --with-mcrypt
- make && make install
注意: 如果你的configure出现--with-gd参数,你要把--with-gd参数去掉(重要:这行要特别注意)
最后启动php-fpm,就完成了
CentOS下安装libjpeg库及编译GD库的更多相关文章
- 编译gd库出错
不知道大家有没有遇到在 X64 RedHat5 或者 RedHat4 下.编译安装PHP环境的时候. 安装了libxml,zlib,jpeg,libpng,freetype,libart_lgpl, ...
- linux/centos下安装nginx(rpm安装和源码安装)详细步骤
Centos下安装nginx rpm包 ...
- Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)
Centos下安装配置LAMP(Linux+Apache+MySQL+PHP) 关于LAMP的各种知识,还请大家自行百度谷歌,在这里就不详细的介绍了,今天主要是介绍一下在Centos下安装,搭建一 ...
- php追加编译GD库
一.准备工作. 安裝 GD 前需要安裝 jpegsrc.v7.tar.gz, libpng-1.6.17.tar.gz, zlib-1.2.8.tar.gz, freetype-2.5.5.tar.g ...
- centos下安装最新版本git(通过master分支下载最新版)
centos6.7下安装最新版本git 本文参考:http://www.01happy.com/centos-install-latest-git/ 按照原博主所提供的思路安装可能会出现下列问题 解决 ...
- CentOS下安装hadoop
CentOS下安装hadoop 用户配置 添加用户 adduser hadoop passwd hadoop 权限配置 chmod u+w /etc/sudoers vi /etc/sudoers 在 ...
- CentOS下安装使用start-stop-daemon
CentOS下安装使用start-stop-daemon 在centos下下了个自启动的服务器脚本 执行的时候发现找不到start-stop-daemon命令 好吧 执行手动编译一下 加上这个命令 w ...
- Centos下安装mysql 总结
一.MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二.MySQL的几个 ...
- centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'
centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 3.7版本需要一个新的包libffi-de ...
随机推荐
- python病毒
介绍 今天碰到一个有趣的python病毒,在这里https://github.com/cranklin/Python-Virus/blob/master/pythonvirus.py#L37 源码 分 ...
- oracle建表详细信息
一张用户表 -- Create table create table OA_DM.DM_GY_USER ( ), username ) not null, loginname ) not null, ...
- 怎样在 js 中实现 反转字符串 的功能?
"string".split('').reverse().join('');
- Java多线程(二):Thread类
Thread类的实例方法 start() start方法内部会调用方法start方法启动一个线程,该线程返回start方法,同时Java虚拟机调用native start0启动另一个线程调用run方法 ...
- QT 安卓动态获取权限
一:在AndroidManifest.xml文件中赋予相关权限 二: package ckdz.Appproject; import android.Manifest; import android. ...
- MVC4学习要点记三
一.数据迁移用来解决code first情况下当增加.删除.改变实体类,或改变DbContext类后,相应地更新数据库结构而不会对现有数据产生影响. 1.启用迁移指令:enable-migration ...
- JS基础_质数练习的改进,提高程序执行效率
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- RPC性能优化
优化 1:元数据共享 hessian 序列化会将两种信息写到输出流: 元数据:即类全名,字段名 值数据:即各个字段对应值(如果字段是复杂类型,则会递归传递该复杂类型 的元数据和内部字段的值数据) 在 ...
- Java入门 异常处理
Java入门 异常处理 1.处理异常(try-catch以及try-catch-finally): a)try会抛出很多种类型的异常-多重catch块的处理 eg:try{ //一些会抛出异常的方法 ...
- maven-将本地jar包添加到本地仓库
一.使用场景 1.把网上的jar包下到本地,如果要在maven的pom文件中配置使用,就必须将jar包按照maven的规范添加到maven仓库中,然后再pom中既可以配置引用了. 二.准备工作 1.电 ...