在LINUX下,为PHP增加GD,重新编译时出现的问题。 make clean distcleanexport LDFLAGS="-lgd"./configure ...your normal parametersmake 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 又出现问题了,照着(水龙头)兄的方法,我在./configure 时出现下面的错误提示:configure: error: can not run test program while cross compiling郁闷!有谁能告诉我你是怎么装上的吗? 看上去,这好像是php的一个bug了,你试试新的版本php4.3.5或者试验一个snap http://snaps.php.net/或者修改gd.c这个文件,/* gdFreeFontCache(); */你在哪里下的php源文件? 在php.net下的4.3.3版.用同样的windows版,在WIN下GD能用. windows下的GD可用,因为不是同一个build,你试试4.3.5吧 ,或者下一个snap试试,我查到的原因是php的bug在10月份的snap才被修改掉,而4.3.3是8月份发布的。 我下了4.3.4,make的时候还是出现下面的错误.:/tmp/php-4.3.3/ext/gd/gd.c:382: undefined reference to `gdFreeFontCache'collect2: ld returned 1 exit statusmake: *** [sapi/cgi/php] Error 1这会不会是GD库的问题?我下的是gd-2.0.15.还有一个是我下了一个JPEG-6B的包,解完后发现少一个libjpeg.so文件,该怎么办? 哈哈,我昨天编译的时候居然出现了和你一样的错误修改办法就是我提到的改源码改ext/gd/gd.c 的382行/* gdFreeFontCache(); */这样编译就没问题了。 谢谢大水龙头老大,我看了gd.c的原文件,从300行到387行的编排格式是下面这样的:+-- 7 行: php_free_gd_image----------------------------------------------------+-- 12 行: php_free_gd_font-----------------------------------------------------+-- 54 行: PHP_MINIT_FUNCTION---------------------------------------------------+-- 10 行: PHP_RSHUTDOWN_FUNCTION-----------------------------------------------这种格式我从没见过,不知道该怎么改,再麻烦你给我讲讲。从378-387是用+-- 10 行: PHP_RSHUTDOWN_FUNCTION-----------------------------------------------代替的。 谢谢老大,我改完了,现在正在make。gdFreeFontCache会不会是调用的字体函数啊? 老大,我快晕倒了!配置,编译,安装都一路通过。可在infophp()下还是没看到关于GD的信息。写了一段程序,用到了imagecreate(),运行时还是提示我没有定义的函数。晕死了。我第一次安装PHP(4.3.3)+APACHE+MYSQL时,APACHE和MYSQL都分别安装到/usr/local/下的apache和mysql目录下。但PHP没有指定目录,是系统默认的目录。然后我在重新编译PHP添加GD的时候,先去下了php-4.3.4.tar.gz,解压完后直接用了./configure,没带任何参数,make,make install,没出现问题。像这样可以把php4.3.3升级到4.3.4吗?接下来我就添加GD了,用的是GD-2.0.15,安装在/tmp/gd目录里。在php-4.3.4目录下配置,用的是./configure --with-gd=/tmp/gd ,没有其它参数,make ,make install,通过。可不但在INFO下看不到GD的信息,imagecreate()还是不能用。我的问题出在哪儿?太麻烦你了。谢谢! 首先是phpinfo() ,^_^,不过这该是笔误为什么装在/tmp呀,/tmp听名字都知道是放临时文件的呀,gd还是装在默认目录吧编译项./configure --with-mysql=/usr/local/mysql --enable-track-vars \--with-apxs=/usr/local/apache/bin/apxs \--with-gd=/usr/local --enable-gd-native-ttf \--with-jpeg-dir=/usr/local --with-png-dir=/usr/local \--with-freetype=/usr/local --with-ttf --with-t1lib当然libjpeg,libpng,freetype,T1lib这些都要装的,这些应该rpm里有的吧因为我用的不是linux而是freebsdlinux如果lib是装在/usr下的,上面的=/usr/local都不要你可以找找还有我不太清楚前面你把300行到387行给我看是什么意思呀???只需要把382行 注释就应该可以编译通过了 PHP输出XML的问题 php调用java webservice 在线等,请各位大侠帮帮忙, 怎么用php编写一个像windows的回收站呢? 用php从utf-8编码的文本读取数据到mysql,出现部分乱码现象 能简单介绍一下php扩展模块实现对php文件的解密的思路么 为什么不能显示输入框的内容? 再次请教一个有关NuSoap的问题:什么是序列化serialize? 我想用PHP读一个网页出来。求代码!UP者有分。 怎样去掉一个字串中的html标签? 一个循环判断进入了误区 请求指导 如何提高网站速度? 熟悉UNIX/LINUX平台下PHP编程的来会答个问题哈!谢谢
configure: error: can not run test program while cross compiling
郁闷!有谁能告诉我你是怎么装上的吗?
或者试验一个snap http://snaps.php.net/或者修改gd.c这个文件,/* gdFreeFontCache(); */
你在哪里下的php源文件?
:/tmp/php-4.3.3/ext/gd/gd.c:382: undefined reference to `gdFreeFontCache'
collect2: ld returned 1 exit status
make: *** [sapi/cgi/php] Error 1
这会不会是GD库的问题?我下的是gd-2.0.15.还有一个是我下了一个JPEG-6B的包,解完后发现少一个libjpeg.so文件,该怎么办?
+-- 7 行: php_free_gd_image----------------------------------------------------
+-- 12 行: php_free_gd_font-----------------------------------------------------
+-- 54 行: PHP_MINIT_FUNCTION---------------------------------------------------
+-- 10 行: PHP_RSHUTDOWN_FUNCTION-----------------------------------------------
这种格式我从没见过,不知道该怎么改,再麻烦你给我讲讲。
从378-387是用
+-- 10 行: PHP_RSHUTDOWN_FUNCTION-----------------------------------------------
代替的。
写了一段程序,用到了imagecreate(),运行时还是提示我没有定义的函数。晕死了。
我第一次安装PHP(4.3.3)+APACHE+MYSQL时,APACHE和MYSQL都分别安装到/usr/local/下的apache和mysql目录下。但PHP没有指定目录,是系统默认的目录。
然后我在重新编译PHP添加GD的时候,先去下了php-4.3.4.tar.gz,解压完后直接用了./configure,没带任何参数,make,make install,没出现问题。像这样可以把php4.3.3升级到4.3.4吗?
接下来我就添加GD了,用的是GD-2.0.15,安装在/tmp/gd目录里。在php-4.3.4目录下配置,用的是./configure --with-gd=/tmp/gd ,没有其它参数,make ,make install,通过。可不但在INFO下看不到GD的信息,imagecreate()还是不能用。
我的问题出在哪儿?
太麻烦你了。谢谢!
为什么装在/tmp呀,/tmp听名字都知道是放临时文件的呀,gd还是装在默认目录吧编译项
./configure --with-mysql=/usr/local/mysql --enable-track-vars \
--with-apxs=/usr/local/apache/bin/apxs \
--with-gd=/usr/local --enable-gd-native-ttf \
--with-jpeg-dir=/usr/local --with-png-dir=/usr/local \
--with-freetype=/usr/local --with-ttf --with-t1lib当然libjpeg,libpng,freetype,T1lib这些都要装的,这些应该rpm里有的吧因为我用的不是linux而是freebsd
linux如果lib是装在/usr下的,上面的=/usr/local都不要
你可以找找还有我不太清楚前面你把300行到387行给我看是什么意思呀???
只需要把382行 注释就应该可以编译通过了