imagick-3.1安装

本文解决使用Imagemagick+imagick.so两年后遇到的编译错误问题,通过更新安装步骤成功解决问题。包括错误详情、解决方法及详细操作过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用Imagemagick+imagick.so两年了,今天重编竟然遇到如下错误:
[code]
在包含自 /home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:21 的文件中:
/home/lvbenwei/source/imagick-3.1.0RC2/php_imagick.h:49:31: 错误:wand/MagickWand.h:没有那个文件或目录
In file included from /home/lvbenwei/source/imagick-3.1.0RC2/php_imagick_file.h:24,
from /home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:22:
/home/lvbenwei/source/imagick-3.1.0RC2/php_imagick_defs.h:72: 错误:expected specifier-qualifier-list before ‘MagickWand’
/home/lvbenwei/source/imagick-3.1.0RC2/php_imagick_defs.h:80: 错误:expected specifier-qualifier-list before ‘DrawingWand’
/home/lvbenwei/source/imagick-3.1.0RC2/php_imagick_defs.h:86: 错误:expected specifier-qualifier-list before ‘PixelIterator’
/home/lvbenwei/source/imagick-3.1.0RC2/php_imagick_defs.h:98: 错误:expected specifier-qualifier-list before ‘PixelWand’
In file included from /home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:22:
/home/lvbenwei/source/imagick-3.1.0RC2/php_imagick_file.h:43: 错误:‘MaxTextExtent’ 未声明 (不在函数内)
在包含自 /home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:22 的文件中:
/home/lvbenwei/source/imagick-3.1.0RC2/php_imagick_file.h:77:32: 警告:文件未以空白行结束
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c: In function ‘php_imagick_file_init’:
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:75: 错误:‘MagickPath’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:75: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:75: 错误:所在的函数内只报告一次。)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:99: 错误:‘HeadPath’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:100: 错误:‘TailPath’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c: In function ‘php_imagick_read_image_using_imagemagick’:
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:124: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:124: 错误:‘MagickFalse’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:128: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:135: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:137: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c: In function ‘php_imagick_read_image_using_php_streams’:
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:144: 错误:‘MagickBooleanType’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:144: 错误:expected ‘;’ before ‘status’
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:177: 错误:‘status’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:177: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:179: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:184: 错误:‘MagickFalse’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:189: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:196: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c: In function ‘php_imagick_write_file’:
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:247: 错误:‘MagickBooleanType’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:247: 错误:expected ‘;’ before ‘status’
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:258: 错误:‘status’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:258: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:260: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:264: 错误:‘MagickFalse’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c: In function ‘php_imagick_stream_handler’:
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:277: 错误:‘MagickBooleanType’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:277: 错误:expected ‘;’ before ‘status’
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:306: 错误:‘status’ 未声明 (在此函数内第一次使用)
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:306: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:310: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:314: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:318: 错误:‘php_imagick_object’ 没有名为 ‘magick_wand’ 的成员
/home/lvbenwei/source/imagick-3.1.0RC2/imagick_file.c:326: 错误:‘MagickFalse’ 未声明 (在此函数内第一次使用)
make: *** [imagick_file.lo] 错误 1
[/code]
google后得到解决方案:
[code]
tar -xzvf imagick-3.1.0RC2.tgz
cd imagick-3.1.0RC2
/usr/local/php-5.3/bin/phpize
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
./configure --with-php-config=/usr/local/php-5.3/bin/php-config
make
sudo make install
[/code]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值