在Ubuntu 14.04上每晚在PHP7上安装Imagick扩展

在Ubuntu 14.04上每晚在PHP7上安装Imagick扩展,php,ubuntu-14.04,imagick,Php,Ubuntu 14.04,Imagick,我安装了ImageMagick,加上Imagick扩展,在PHP5.6中运行良好。目前在Ubuntu 14.04上使用PHP 7夜间版本,安装如下: 我知道存在兼容性问题,因此我发现了这一点,并尝试安装它,基本上是使用: phpize /配置 制作 安装 然后,我将imagick.so文件复制到extensions_dir,并将其添加到php.ini,然后重新启动Apache。不幸的是,这不起作用-Imagick没有出现在phpinfo中 有人知道如何使用PHP7实现这一点吗 非常感谢 好吧,

我安装了ImageMagick,加上Imagick扩展,在PHP5.6中运行良好。目前在Ubuntu 14.04上使用PHP 7夜间版本,安装如下:

我知道存在兼容性问题,因此我发现了这一点,并尝试安装它,基本上是使用:

phpize
/配置
制作
安装

然后,我将imagick.so文件复制到extensions_dir,并将其添加到php.ini,然后重新启动Apache。不幸的是,这不起作用-Imagick没有出现在phpinfo中

有人知道如何使用PHP7实现这一点吗


非常感谢

好吧,我在这里确实犯了一些基本的错误,不过希望不会太模糊,最终的解决方案不会在将来帮助一些人

第一个问题是,我确实是从PHP5运行phpize的——我认为我已经正确地将其符号化了,但我没有

除此之外,他要执行的第一个命令是:

/usr/local/php7/bin/phpize

我的第二个错误是,./configure还假设我运行的是PHP 5,所以要纠正这个错误,我必须运行:

/configure--with-php-config=/usr/local/php7/bin/php-config

最后,
make
makeinstall
工作并自动将文件复制到正确的位置

谢谢@Danack的评论,他们帮助了我们

试试这本指南:(拉威尔·福吉)。这对我很管用。如果链接断开:

#!/bin/bash
if [ "$EUID" -ne 0 ]
  then echo "Please run as root"
  exit
fi

apt-get install pkg-config libmagickwand-dev -y
cd /tmp
wget https://pecl.php.net/get/imagick-3.4.0.tgz
tar xvzf imagick-3.4.0.tgz
cd imagick-3.4.0
phpize
./configure
make install
rm -rf /tmp/imagick-3.4.0*
echo extension=imagick.so >> /etc/php/7.0/cli/php.ini
echo extension=imagick.so >> /etc/php/7.0/fpm/php.ini
service php7.0-fpm restart
service nginx restart

不要放弃我的朋友,PHP5.6是非常不安全的。这应该是可行的……如果不是这样的话,就会出现一些问题(duh),但是如果没有更多的信息,我们将无法知道会发生什么。您确定编辑了正确的ini文件吗?如果是,您可能需要打开额外的日志记录,或者通过strace运行Apache来查找发生了什么错误。PHP启动时会记录此信息:
警告:PHP启动:imagick:无法初始化使用模块API=20131226编译的模块模块PHP使用模块API=20151012编译这些选项需要在第0行的未知中匹配,phpize使用的是5.x二进制文件,而不是PHP7中的二进制文件。您能否一步一步地告诉我们,您是如何使用PHP7的。我也是新手。谢谢