Linux下安装 php imagick扩展
今天小编 由于工作需求用到了 imagick 这个扩展 服务器环境是 lnmp 架构下面稍微来介绍下 这个 东东
imagick是一个PHP的扩展,用ImageMagick提供的API来进行图片的创建与修改,不过这些操作已经包装到扩展imagick中去了,
最终调用的是ImageMagick提供的API. 所以这就必须要安装 ImageMagick 。那么 ImageMagick 这个又是啥东东呢 下面来说下
ImageMagick则是一套软件系列,主要用于图片的创建、编辑以及转换等,详细的解释见ImageMagick
的官方网站 http://www.imagemagick.org/,ImageMagick与GD的性能要高很多,如果是在处理大量的图片时更加能体现
ImageMagick的性能。
好的看了上面的介绍 你就知道imagick的强大了吧 下面我们一步一步的安装
1> 首先下载 ImageMagick
# wget ftp://ftp.u-aizu.ac.jp/pub/graphics/image/ImageMagick/imagemagick.org/ImageMagick.tar.gz
这里下载的是 ImageMagick 最新版本 。下载之后我们解压
#tar -xzvf ImageMagick.tar.gz //解压好了之后我们进入这个目录
#cd ImageMagick-6.8.6-5 // 这个是我解压之后的ImageMagick目录名称
# ./configure --prefix=/usr/local/imagemagick // 第一步配置安装 这个基本不会出现啥问题的
# make //第二步
# make install //第三步
好的 我们安装ImageMagick 安装好了 我们告一段落 我们来安装 imagick 这个东东
2> 首先下载 imgick
# wget http://pecl.php.net/get/imagick-3.1.0b1.tgz //下载地址随时都会变 具体根据
# tar -xzvf imagick.tar.gz //解压
# cd imagick-3.0.1 // 这个是我解压之后的imagick目录名称
# phpize //看看这个有木有
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick //第一步操作 注意自己当时安装的 php配置路径
唉安装到这步的时候我就哭了 你个渣渣 竟然说找不到 MagickWand.h 这个东西
checking for MagickWand.h header file... configure: error: Cannot locate header file MagickWand.h
我看到这个错误的做法就是问度娘 网上是这么说的
原来ImageMagick 6.8这个版后的目录结构变了,旧版本头文件是放在/usr/local/include/ImageMagick目录的,
而ImageMagick 6.8则是放在/usr/local/include/ImageMagick-6 尼玛我也不懂这是啥意思
我按照网上的操作 ln -s /usr/local/include/ImageMagick-6 /usr/local/include/ImageMagick 这么了一下
继续
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
的时候又报错了 我了个擦 这是要玩我么

我又问了问度娘。。
我们先来查找下 pkgconfig 的位置吧
# find /usr/local/ -name pkgconfig
结果出来了
/usr/local/lib/pkgconfig
/usr/local/apache--/lib/pkgconfig
/usr/local/libxml2/lib/pkgconfig
/usr/local/imagemagick/lib/pkgconfig
找到了这么多的 pkgconfig 这里肯定是的要 imagemagick 这个pkgconifg 目录
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# export PKG_CONFIG_PATH=/usr/local/imagemagick/lib/pkgconfig
# make //第二步
# make install //完成
执行结果显示

代表安装成功了
imagick.so 生成在 /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/ 目录下
修改php.ini 配置
# vi /usr/local/php/etc/php.ini
把 ;extension_dir ="/";
修改为
extension_dir = /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
添加一行
imagick.so //这是添加了 imagick的扩展
最后一步 如果是apache服务器的话 apache restart
小编用的是nginx /usr/local/nginx/sbin/nginx -s reload 这样的话是没效果的
只有
#kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` 这样才行 因为nginx是通过 php-fpm 运行的 只有重启才生效
好的我们打印下 phpinfo

好的imagick安装完成。。
注:安装imagick扩展时需要PHP >= 5.1.3,ImageMagick >= 6.2.4
本文为博客园 Sudo高 原创,请尊重作者版权,转载请注明出处
Linux下安装 php imagick扩展的更多相关文章
- linux 下安装 php kafka 扩展
我们使用官方推荐 php kafka 扩展 phpkafka,由于该扩展是基于 librdkafka 开发,所以我们首先需要安装 librdkafka 下载地址:http://kafka.apache ...
- Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!
前言 前面刚写过nosql其中三款热门产品的对比,这次主要写关于Redis的一些事情,Redis的介绍.安装以及扩展(php-redis,因为我是phper)安装等等.同时是写给我的朋友(cccjjj ...
- linux 下安装php curl扩展
方法一 安装cURL wget https://curl.haxx.se/download/curl-7.53.1.tar.gz tar -zxf curl-7.17.1.tar.gz ./confi ...
- linux下安装memcached以及扩展(xampp环境)
网上有很多相关的文章,就不具体写了.(假设这里文件都上传到更目录下的tmp文件夹下) 1.大致流程先装 libevent 和 memcache http://www.cnblogs.com/zgx/a ...
- Linux下安装memcache PHP扩展
[root@centos memcache-2.2.4]# wget http://pecl.php.net/get/memcache-2.2.4.tgz [root@centos memcache- ...
- Linux下安装Pcntl PHP扩展
//解压源码包 [root@centos src]# tar -zxvf php-5.5.35.tar.gz //进入pcntl扩展库 [root@centos src]# cd php-5.5.35 ...
- linux下 安装 ImageMagick 及其 php imagick扩展(转)
linux下 安装 ImageMagick 及其 php imagick扩展 PHP版本7.1.3 : ImageMagick版本 ImageMagick-7.0.8-3: PHP扩展imagick版 ...
- linux下安装opcache扩展
linux下安装opcache扩展 参考:http://www.php.net/manual/zh/opcache.installation.php 1 2 3 4 5 6 7 wget http ...
- linux下Redis与phpredis扩展安装
++++++++++++++++++++++++++++++++++++++++++++++linux下Redis与phpredis扩展安装++++++++++++++++++++++++++++++ ...
随机推荐
- Asp.Net Core 3.0 Kestrel服务器下 高性能 WebSocket Server
最近研究.net core 的各种高性能类型,内存池之类的东西,基于kestrel 服务器的websocket ,写个例子练下手 把原生的Websocket用ArrayPool<T>,Me ...
- es5中数组的遍历方法
//for循环 const arr = [1,2,3,4,5] for(let i = 0; i < arr.length; i++){ if(arr[i] === 2){ //break // ...
- 重拾c++第三天(5):循环和关系表达式
1.改变步长 ;i<;i=i+) 2.*与++优先级相同,从右向左 3.strcmp函数比较两个字符串,=0两个相同,><0 ----> str1><str2 4. ...
- OpenGL ES for Android
经过半年的准备OpenGL ES for Android系列文章终于要和大家见面了,在这里定一个小目标-先吸引1000个粉丝,万一实现了呢.写关于OpenGL ES的文章开始是有一些犹豫的,因为Ope ...
- 18个Java8日期处理的实践,对于程序员太有用了!
18个Java8日期处理的实践,对于程序员太有用了! Java 8 推出了全新的日期时间API,在教程中我们将通过一些简单的实例来学习如何使用新API. Java处理日期.日历和时间的方式一直为社区所 ...
- Java入门 - 高级教程 - 07.多线程
原文地址:http://www.work100.net/training/java-multi-threading.html 更多教程:光束云 - 免费课程 多线程 序号 文内章节 视频 1 概述 2 ...
- IDEA需要修改的配置
自动编译开关 忽略大小写开关 智能导包开关 如下图所示,将 自动导入不明确的结构 智能优化包 这两个选项勾上.那么有什么效果呢? 你在代码中,只要敲list,就会出现提示,自动导入java.util. ...
- ios--->NSNotificationCenter传值
object实现 //在发送通知时设置object参数 [[NSNotificationCenter defaultCenter] postNotificationName:@"ThisIs ...
- MySQL8.0 MIC高可用集群搭建
mysql8.0带来的新特性,结合MySQLshell,不需要第三方中间件,自动构建高可用集群. mysql8.0作为一款新产品,其内置的mysq-innodb-cluster(MIC)高可用集群的技 ...
- DWZ框架--页面样式丢失
案例 今天我导入DWZ框架demo时,发现主页面样式丢失,出现了如下图那鬼样: 正常情况应该是有表格显示,并且用chrome开发者模式调试,可以看到有对应的样式,如下图所示: 先简单介绍下dwz框架的 ...