调用未定义的函数imagecreatefromjpeg()并启用GD

时间:2014-10-14 08:40:19

标签: php ubuntu opencart gd

我正在使用PHP 5.5.9开发ubuntu 14.04 LTS 启用GD,我加倍检查 但每当我尝试使用imagecreatefromjpeg()

时,仍然会向我显示这个消息
  

致命错误:在第34行的/../library/image.php中调用未定义的函数imagecreatefromjpeg()

我甚至尝试使用此

从命令行检查它
php -r "var_dump(function_exists('imageantialias'));"

它让我回来了 布尔(假)

无论如何都要修复它而不重新编译它?

3 个答案:

答案 0 :(得分:30)

我认为您已经安装了gd的不完整版本 编译gd扩展程序时,请使用标记--with-jpeg-dir=DIR--with-freetype-dir=DIR

PS。别忘了make clean

下面的图片是gd的incomplete版本:

enter image description here

下面的图片是gd的complete版本: enter image description here

答案 1 :(得分:0)

就我而言,升级到PHP 7.3后缺少GD。因此,我只是通过使用以下命令将其添加:

sudo apt-get install php7.3-gd

答案 2 :(得分:-1)

Try this
<?php
function LoadJpeg($imgname)
{
    /* Attempt to open */
    $im = @imagecreatefromjpeg($imgname);

    /* See if it failed */
    if(!$im)
    {
        /* Create a black image */
        $im  = imagecreatetruecolor(150, 30);
        $bgc = imagecolorallocate($im, 255, 255, 255);
        $tc  = imagecolorallocate($im, 0, 0, 0);

        imagefilledrectangle($im, 0, 0, 150, 30, $bgc);

        /* Output an error message */
        imagestring($im, 1, 5, 5, 'Error loading ' . $imgname, $tc);
    }

    return $im;
}

header('Content-Type: image/jpeg');

$img = LoadJpeg('bogus.image');

imagejpeg($img);
imagedestroy($img);
?>