PHP Fatal error: Call to undefined function imagettftext()

PHP Fatal error: Call to undefined function imagettftext()

一、问题描述

  安装了环境,发现验证码显示不了,查看日志:error: Call to undefined function imagettftext(),然后你去搜索百度,原因千千万,帖子里的解决方法也千千万,有的是缺gd库支持(没安装),也有可能是gd库要依赖的库等没有安装,或者说是库版本不匹配等,笔者我也捣弄了一大堆解决方式,最后的建议还是重新编译安装php,各种曲折大家可以参考文章:http://hily.me/blog/2010/03/php-undefined-imagettfbbox/

二、重新编译安装php

  1、首先make clean

   ---> 清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件,然后清除之前php编译产生的一些文件,清除残留

检查当前安装的PHP包 **

  这个命令是删除不干净的
    #yum remove php 因为使用这个命令以后再用
  #php -v 还是会看到有版本信息的。。。。。
必须强制删除
#rpm -qa|grep php 提示如下
#php-pdo-5.1.6-27.el5_5.3
#php-MySQL-5.1.6-27.el5_5.3
#php-xml-5.1.6-27.el5_5.3
#php-cli-5.1.6-27.el5_5.3
#php-common-5.1.6-27.el5_5.3
#php-gd-5.1.6-27.el5_5.3 注意卸载要先卸载没有依赖的 pdo是mysql的依赖项;common是gd的依赖项; 例如:# rpm -e php-pdo-5.1.6-27.el5_5.3
error: Failed dependencies:php-pdo is needed by (installed) php-mysql-5.1.6-27.el5_5.3.i386 所以正确的卸载顺序是:
# rpm -e php-mysql-5.1.6-27.el5_5.3
# rpm -e php-pdo-5.1.6-27.el5_5.3
# rpm -e php-xml-5.1.6-27.el5_5.3
# rpm -e php-cli-5.1.6-27.el5_5.3
# rpm -e php-gd-5.1.6-27.el5_5.3
# rpm -e php-common-5.1.6-27.el5_5.3 再用# php -v 查看版本信息已经没有提示

安装之前可以运行一下命令 ,安装必要的依赖包:

yum install libmcrypt libmcrypt-devel mhash mhash-devel libxml2 libxml2-devel bzip2 bzip2-devel

  2、进入php的源码目录,重新进行配置,安装,以下是参考:

    2.1、配置

./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-gd --with-libxml-dir --with-openssl --enable-fpm --enable-xml --enable-sockets --enable-pdo --with-pdo-mysql=/usr/local/mysql --with-mcrypt --with-bz2

    2.2、运行编译和安装命令

      make && make install

    2.3、添加PHP和PHP-FPM配置文件。

cp /usr/local/src/php-5.6.23/php.ini-production /etc/php.ini
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
sed -i ‘[email protected];pid = run/[email protected] = /usr/local/php/var/run/[email protected]‘ php-fpm.conf

    2.4、添加PHP-FPM启动脚本。

cp /usr/local/src/php-5.6.23/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm

    2.5、添加PHP-FPM至服务列表并设置开机自启。

chkconfig --add php-fpm
chkconfig --list php-fpm
chkconfig php-fpm on

    2.6、启动服务。

service php-fpm start

    2.7、添加Nginx对FastCGI的支持

       2.7.1、备份默认的Nginx配置文件。

cp /etc/nginx/nginx.conf /etc/nginx/nginx.confbak
cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf

      2.7.2输入命令vi /etc/nginx/nginx.conf打开Nginx的配置文件,按下i键,在所支持的主页面格式中添加php格式的主页,类似如下:

location / {
  root   /usr/local/nginx/html;
  index  index.php index.html index.htm;
}

      2.7.3、取消以下内容前面的注释:

location ~ \.php$ {
 root html;
 fastcgi_pass 127.0.0.1:9000;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
 include fastcgi_params;
}

      2.7.4、将root html;改成root /usr/local/nginx/html;

      2.7.5、将fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;改成fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html/$fastcgi_script_name;

      2.7.6、按下Esc键,然后输入:wq并回车以保存并关闭Nginx配置文件。

      2.7.7、输入命令service nginx reload重新载入Nginx的配置文件。

  

  

原文地址:https://www.cnblogs.com/hysen/p/10849988.html

时间: 2024-10-11 04:23:38

PHP Fatal error: Call to undefined function imagettftext()的相关文章

Fatal error: Call to undefined function imagettftext()解决办法

Fatal error: Call to undefined function imagettftext()解决办法 我的问题是php编译安装时指定了gd的目录,其实不用指定.就可以了 博客分类: php freestylephpcmsconfigure  问题描述:phpcms 安装后,不能看到验证码图片. 解决:确保php-gd和freestyle.而且确保是先安装了freestyle,然后是php-gd:如果是先安装了php-gd,那么在安装完freestyle后,需要make clean

linux重新编译安装gd,增加freetype支持,解决验证码不显示问题,Fatal error: Call to undefined function imagettftext()

问题: Fatal error: Call to undefined function Think\imagettftext() in /var/www/webreg/ThinkPHP/Library/Think/Verify.class.php on line 143 查看phpinfo()后得知,gd中没有freetype的支持 解决: 首先安装freestyle,php-gd 确保先安装freestyle,然后是php-gd:如果是先安装了php-gd,那么在安装完freestyle后,需

fatal error: call to undefined function imagettftext

参照:http://stackoverflow.com/questions/7290958/php-fatal-error-call-to-undefined-function-imagettftext Just recompile extension gd.so, under folder php/ext/gd ./configure --with-php-config=/usr/local/php5/bin/php-config --with-freetype-dir=/usr/ --ena

php提示Fatal error: Call to undefined function imagecreate()

在php中imagecreate函数是一个图形处理函数,主要用于新建一个基于调色板的图像了,然后在这个基础上我们可以创建一些图形数字字符之类的,但这个函数需要GD库支持,如果没有开启GD库使用时会 undefined 在php中imagecreate函数是一个图形处理函数,主要用于新建一个基于调色板的图像了,然后在这个基础上我们可以创建一些图形数字字符之类的,但这个函数需要GD库支持,如果没有开启GD库使用时会提示Call to undefined function imagecreate()错

PHP Fatal error: Call to undefined function mysql_pconnect()

[[email protected] caishenye]# tail -f /data/caishenye/sa_9_0.log PHP Warning:  mkdir(): No such file or directory in /data/caishenye/sa_9_0.php on line 18 PHP Fatal error:  Call to undefined function mysql_pconnect() in /data/caishenye/sa_9_0.php on

PHP Fatal error: Call to undefined function json_decode()

php:5.5,操作系统:ubuntu13.10 网站文本编辑器使用的是ueditor,测试上传图片显示后台配置项未成功加载,上传插件不能正常使用. 查阅了ueditor的文档,有关运行测试那里先访问ueditor/controller.php,提示出错,再访问ueditor/php/controller.php?action=config,提示PHP Fatal error: Call to undefined function json_decode().原因是json相关函数为定义. 查看

[乐意黎原创] php 页面提示 Fatal error: Call to undefined function curl_init()

调用到 curl_init()的php页面提示: Fatal error: Call to undefined function curl_init() in E:\PHPCMS\Cms\www.aerchi.com\kuaiji\weixin.php on line 196 如图: 首先, 在 php.ini 文件中开启 extension=php_curl.dll , 即把把前面的分号(;)注释划掉. 如果是 windows 7 系统(需要openssl),还需要把 extension=ph

Fatal error: Call to undefined function pasterTempletDiy()

下面也简单说下这个函数的作用,主要用于dedecms留言板页面调用头部尾部文件,放到DEDE的外部函数接口文件里就可以了,具体路径位如根目录include文件夹下extend.func.php. 在extend.func.php 文件底部附加如下代码: function pasterTempletDiy($path) { require_once(DEDEINC."/arc.partview.class.php"); global $cfg_basedir,$cfg_templets_

Fatal error: Call to undefined function fnmatch() 解决

我的PHP版本是5.6.30,linux 是CentOS 6.6,nginx,也不知啥问题,看了官方: https://secure.php.net/manual/en/function.fnmatch.php 上面有段警告: Warning For now, this function is not available on non-POSIX compliant systems except Windows.  大致意思fnmatch不能在除windows以外非POSIX系统上使用, 下面也