已安装 Gd,但“调用未定义的函数 imagecreatefromjpeg()”

Posted

技术标签:

【中文标题】已安装 Gd,但“调用未定义的函数 imagecreatefromjpeg()”【英文标题】:Gd installed, but "Call to undefined function imagecreatefromjpeg()" 【发布时间】:2014-06-02 06:32:29 【问题描述】:

看起来我的主机支持 gd,但我仍然收到错误(php 版本 5.3.28)

Fatal error: Call to undefined function imagecreatefromjpeg()

这是我的phpinfo:

gd

GD Support  enabled
GD Version  bundled (2.1.0 compatible)
GIF Read Support    enabled
GIF Create Support  enabled
PNG Support enabled
libPNG Version  1.2.44
WBMP Support    enabled
XBM Support enabled

Directive   Local Value Master Value
gd.jpeg_ignore_warning  0   0

【问题讨论】:

如果已启用,您可能应该联系您的主机提供商。或者您可以在使用此功能的地方发布一个 sn-p。 启用 gif、启用 png、启用 wmbp 和 xmb。没有关于 jpg 的,试试imagecreatefromgif。此外,与托管服务提供商交谈很可能会给您“正确”的答案 不 gd.jpeg_ignore_warning 行意味着我有 jpeg 支持? 不,不代表你支持jpeg。 【参考方案1】:

看起来虽然确实支持 GD,但它用 libjpeg 编译。 gd.jpeg_ignore_warning 确实 not 意味着您有 jpeg 支持。如果这是您自己的服务器,请确保使用--with-jpeg-dir 运行配置。您可能需要搜索它。我使用命令find / -name libjpeg* 并得到/usr/lib 用于CentOS5。如果这是共享主机,请让他们为您安装。

我的PHP完整编译如下:

wget http://us1.php.net/distributions/php-5.5.10.tar.gz -O php.tar.gz 
tar -xvf php.tar.gz
cd php-5.5.10
yum -y install libxml2-devel libmcrypt-devel libpng-devel
./configure --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d  --with-apxs2 --with-mysql --with-mysqli --with-zlib --with-curl --with-libdir=lib --with-openssl --with-pdo-mysql --with-mcrypt  --with-pcre-regex --enable-zip --with-gd --enable-mbstring --with-jpeg-dir=/usr/lib
make clean
make 
make install

【讨论】:

以上是关于已安装 Gd,但“调用未定义的函数 imagecreatefromjpeg()”的主要内容,如果未能解决你的问题,请参考以下文章

为啥即使 CPAN 说 GD::Graph::pie 已安装并且是最新的,“使用 GD::Graph::pie;”也会失败?

已安装 php-gd 但在 centos 7(php 7.3 版本)中无法运行

php中gd库已打开,还是不能加载图片

如何在 debian 8 jessie 上安装 php 7 gd 扩展?

linux系统如何让php使用GD库函数

php gd库不能显示图片?为啥?gd库启动了,检查代码也没问题,但就是显示不了!请高手帮帮忙。。。