我在 VMware 中安装了 Ubuntu Desktop 13.10 64 位。
make
我正在尝试在机器上编译 PHP 5.4.14。以下是由于错误而停止的位置:
/usr/bin/ld: ext/mysqlnd/.libs/mysqlnd_net.o: undefined reference to symbol 'uncompress'
/usr/bin/ld: note: 'uncompress' is defined in DSO /lib/x86_64-linux-gnu/libz.so.1 so try adding it to the linker command line
/lib/x86_64-linux-gnu/libz.so.1: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
我在 12.10 32 位 VM 上编译并构建了相同版本的 php,并且它似乎运行正常。
zlib1g
zlib1g-dev
我已检查并安装完毕zlibc
。可能存在什么问题?
答案1
--with-libdir=lib64
make clean
应该可以解决问题。我认为您忘记在添加--with-libdir
配置之后和之前执行make compile
。我刚刚使用 编译了 php 版本 5.5.2 phpfarm
,最初在使用 时遇到了您描述的相同问题--with-mysqli=mysqlnd
。添加--with-libdir=lib64
ANDmake clean
解决了该问题。