Gmagick 无法从源代码安装

Gmagick 无法从源代码安装

我正在尝试从源代码安装 gmagick php 扩展,使用以下命令:

    mkdir gmagick
    cd gmagick
    mkdir build
    mkdir local

    cd $HOME/gmagick/build
    wget ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/1.3/GraphicsMagick-1.3.18.tar.gz
    tar zxvf GraphicsMagick-1.3.18.tar.gz
    cd GraphicsMagick-1.3.18
    ./configure --prefix=$HOME/gmagick/local --enable-shared --enable-symbol-prefix
    make
    make install
    export PATH=$HOME/gmagick/local/bin:$PATH

    cd $HOME/gmagick/build
    wget http://pecl.php.net/get/gmagick-1.1.2RC1.tgz
    tar zxvf gmagick-1.1.2RC1.tgz
    cd gmagick-1.1.2RC1
    phpize
    export PKG_CONFIG_PATH=$HOME/gmagick/local/lib/pkgconfig
    ./configure --prefix=$HOME/gmagick/local --with-gmagick=$HOME/gmagick/local
    make
    make install
    echo "extension=gmagick.so" > /etc/php5/conf.d/gmagick.ini

    service php5-fpm restart

下面几行包含测试是否正确安装的命令及其输出。

    php -i | grep gmagick
    PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525+lfs/gmagick.so' - /usr/lib/php5/20100525+lfs/gmagick.so: undefined symbol: MagickBlurImage in Unknown on line 0
    /etc/php5/cli/conf.d/gmagick.ini,
    PWD => /root/gmagick/build/gmagick-1.1.2RC1
    OLDPWD => /root/gmagick/build
    _SERVER["PWD"] => /root/gmagick/build/gmagick-1.1.2RC1
    _SERVER["OLDPWD"] => /root/gmagick/build

答案1

我自己也遇到了同样的问题。问题出--enable-symbol-prefix在配置 GraphicsMagick 时的标志上。Gmagick 扩展肯定找不到符号,因为--enable-symbol-prefix“允许在库符号前加上‘Gm’”(来自文档)。

这是我编写的从源代码安装 GraphicsMagick 的脚本 -https://gist.github.com/bhdouglass/7851749

相关内容