PHP

安装PHP编译出错合集记录

情况一

-liconv -o sapi/fpm/php-fpm /usr/bin/ld: cannot find -liconv collect2: ld returned 1 exit status make: *** [sapi/fpm/php-fpm] Error 1

初步定位是iconv的问题,解决方法 把libiconv卸载掉,进入libiconv源码目录执行:
# make uninstall
# make clean

# ./configure –prefix=/usr/local/libiconv
# make
# make install
再进入php源码目录:
./configure php 时加上参数 --with-iconv=/usr/local/libiconv
情况二:

/usr/bin/ld: cannot find -lltdl collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] Error 1

解决办法安装包如下:
# yum install libtool-ltdl.x86_64 libtool-ltdl-devel.x86_64
情况三:

collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] Error 1

解决办法, 请安装lib所需的安装包:
yum install ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel ncurses-devel zlib-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel libXpm-devel gettext-devel pam-devel kernel
执行安装完以后即可解决问题
make  && make install
情况四:
ext/iconv/iconv.o: In function `php_iconv_stream_filter_ctor’:
/usr/local/soft/php-5.2.14/ext/iconv/iconv.c:2491: undefined reference to `libiconv_open’
collect2: ld returned 1 exit status
make: *** [sapi/cgi/php-cgi] Error 1
编译参数如下:
./configure –prefix=/usr/local/php –with-gd=/usr/local/gd –with-jpeg-dir=/usr/local/jpeg –with-png-dir=/usr/local/png –with-freetype-dir=/usr/local/freetype –with-mysql=/usr/local/mysql –enable-fastcgi –enable-fpm
解决办法: 增加   --disable-cli 编译参数。   情况五:

ext/xmlreader/php_xmlreader.o: In function `zim_xmlreader_XML': /usr/local/src/php-5.2.8/ext/xmlreader/php_xmlreader.c:1109: undefined reference to `xmlTextReaderSetup' collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] Error 1

解决办法:折腾了半天,最后先make clean 一下,然后把所有libxml2相关的包都装上重新编译就ok了。   情况六: 运行可能报错 :我遇到xsl和mcrypt两个库报错,重新安装一下xsl的dev包就可以:
CentOS : yum install libxslt-devel libmcrypt-devel 
Debian : apt-get install libxslt1-dev libmcrypt-dev 
如果你有其他的库不满足,搜索一下该库,安装一下即可,这一步应该没有太多问题。 编译:make    我在Debian下make正常,但在CentOS下却提示make错误, make: *** [sapi/fpm/php-fpm] Error 1 错误中出现 libiconv,应该是iconv包问题, 使用下面的命令替换即可: make ZEND_EXTRA_LIBS='-liconv'  完成后:
make test
make install

0 个评论

要回复文章请先登录注册