今天小编 由于工作需求用到了 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扩展的更多相关文章

  1. linux 下安装 php kafka 扩展

    我们使用官方推荐 php kafka 扩展 phpkafka,由于该扩展是基于 librdkafka 开发,所以我们首先需要安装 librdkafka 下载地址:http://kafka.apache ...

  2. Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!

    前言 前面刚写过nosql其中三款热门产品的对比,这次主要写关于Redis的一些事情,Redis的介绍.安装以及扩展(php-redis,因为我是phper)安装等等.同时是写给我的朋友(cccjjj ...

  3. 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 ...

  4. linux下安装memcached以及扩展(xampp环境)

    网上有很多相关的文章,就不具体写了.(假设这里文件都上传到更目录下的tmp文件夹下) 1.大致流程先装 libevent 和 memcache http://www.cnblogs.com/zgx/a ...

  5. Linux下安装memcache PHP扩展

    [root@centos memcache-2.2.4]# wget http://pecl.php.net/get/memcache-2.2.4.tgz [root@centos memcache- ...

  6. Linux下安装Pcntl PHP扩展

    //解压源码包 [root@centos src]# tar -zxvf php-5.5.35.tar.gz //进入pcntl扩展库 [root@centos src]# cd php-5.5.35 ...

  7. linux下 安装 ImageMagick 及其 php imagick扩展(转)

    linux下 安装 ImageMagick 及其 php imagick扩展 PHP版本7.1.3 : ImageMagick版本 ImageMagick-7.0.8-3: PHP扩展imagick版 ...

  8. linux下安装opcache扩展

    linux下安装opcache扩展   参考:http://www.php.net/manual/zh/opcache.installation.php 1 2 3 4 5 6 7 wget http ...

  9. linux下Redis与phpredis扩展安装

    ++++++++++++++++++++++++++++++++++++++++++++++linux下Redis与phpredis扩展安装++++++++++++++++++++++++++++++ ...

随机推荐

  1. Asp.Net Core 3.0 Kestrel服务器下 高性能 WebSocket Server

    最近研究.net core 的各种高性能类型,内存池之类的东西,基于kestrel 服务器的websocket ,写个例子练下手 把原生的Websocket用ArrayPool<T>,Me ...

  2. es5中数组的遍历方法

    //for循环 const arr = [1,2,3,4,5] for(let i = 0; i < arr.length; i++){ if(arr[i] === 2){ //break // ...

  3. 重拾c++第三天(5):循环和关系表达式

    1.改变步长 ;i<;i=i+) 2.*与++优先级相同,从右向左 3.strcmp函数比较两个字符串,=0两个相同,><0 ----> str1><str2 4. ...

  4. OpenGL ES for Android

    经过半年的准备OpenGL ES for Android系列文章终于要和大家见面了,在这里定一个小目标-先吸引1000个粉丝,万一实现了呢.写关于OpenGL ES的文章开始是有一些犹豫的,因为Ope ...

  5. 18个Java8日期处理的实践,对于程序员太有用了!

    18个Java8日期处理的实践,对于程序员太有用了! Java 8 推出了全新的日期时间API,在教程中我们将通过一些简单的实例来学习如何使用新API. Java处理日期.日历和时间的方式一直为社区所 ...

  6. Java入门 - 高级教程 - 07.多线程

    原文地址:http://www.work100.net/training/java-multi-threading.html 更多教程:光束云 - 免费课程 多线程 序号 文内章节 视频 1 概述 2 ...

  7. IDEA需要修改的配置

    自动编译开关 忽略大小写开关 智能导包开关 如下图所示,将 自动导入不明确的结构 智能优化包 这两个选项勾上.那么有什么效果呢? 你在代码中,只要敲list,就会出现提示,自动导入java.util. ...

  8. ios--->NSNotificationCenter传值

    object实现 //在发送通知时设置object参数 [[NSNotificationCenter defaultCenter] postNotificationName:@"ThisIs ...

  9. MySQL8.0 MIC高可用集群搭建

    mysql8.0带来的新特性,结合MySQLshell,不需要第三方中间件,自动构建高可用集群. mysql8.0作为一款新产品,其内置的mysq-innodb-cluster(MIC)高可用集群的技 ...

  10. DWZ框架--页面样式丢失

    案例 今天我导入DWZ框架demo时,发现主页面样式丢失,出现了如下图那鬼样: 正常情况应该是有表格显示,并且用chrome开发者模式调试,可以看到有对应的样式,如下图所示: 先简单介绍下dwz框架的 ...