使用系统默认路径编译PHP出错解决
原先的文章中 我的PHP编译相关的库 都是指定了prefix编译到特定目录中 而在php中configure中.都...
扫描右侧二维码阅读全文
27
2008/10

使用系统默认路径编译PHP出错解决

原先的文章中
我的PHP编译相关的库
都是指定了prefix编译到特定目录中
而在php中configure中.都是指定路径
类似--with-libxml-dir=/usr/local/webserver/libxml
而在这次我尝试将所有的支持包都安装在默认路径中
在php的编译过程中.出现了问题
./configure之后报错
configure: error: GD build test failed.
而如果without-gd后.编译PHP成功
接着讲gd库作为动态链接库编译,也能够成功
翻阅了网上的资料.基本都没有提到.也有两篇提到的.
都是吧openssl或者mycrypt去掉就好了
最终也没有所以然
最后在这篇文章中
http://bbs.chinaunix.net/viewthread.php?tid=473127
我找到灵感.
文章中提到安装了gd和相应包后
"最后ldconfig刷新一下
ldconfig -v
确认有
libjpeg.so.62 =>; libjpeg.so.62.0.0
libpng.so.3 =>; libpng.so.3.1.2.5
libpng12.so.0 =>; libpng12.so.0.1.2.5
libfreetype.so.6 =>; libfreetype.so.6.3.2"
我突然想到前面编译成功了.但是可能没有ldconfig刷新
立马到机器上刷新
然后ldconfig -v | grep jpeg等等发现果然系统里面没有,而且刷新后还是没有
然后看了下整个输出
系统只包含了一下几个目录,
/usr/local/webserver/bdb/lib:
/lib:
/usr/lib:
第一个是我手动加入了.而默认的就只有/lib和/usr/lib
我记得默认编译都是放入/usr/local/lib的
到目录里一看.果然编译好的lib都在这里.
然后
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig
再看输出.已经有了这几个动态库
然后再到php目录里去configure
果然问题解决了.

Last modification:November 26th, 2018 at 04:16 pm
If you think my article is useful to you, please feel free to appreciate

3 comments

  1. JulyClyde

    所以说自己编译是一个很不好的习惯,很容易导致各种各样隐形问题的发生。但无奈,对于redhat的太监操作系统来说,如果不编译,基本上就没啥软件能用的:不是太古,就是bug太多

  2. Johnny Woo

    谢谢.已更正.

  3. xi2008wang

    如果都在这里.??

Leave a Comment