在intel平台上编译rsync时,Solaris cc segfaults

我正在尝试在Intel芯片组上的Solaris 5.10上编译rsync-3.0.7。

运行./configure我看到下面的(显然是错误的行):

 checking size of int... 0 checking size of long... 0 checking size of long long... 0 checking size of short... 0 checking size of int16_t... 0 checking size of uint16_t... 0 

config.log我看到以下几行:

 configure.sh:5448: /tool/sunstudio12.1/bin/cc -xc99=all -o conftest -g -DHAVE_CONFIG_H conftest.c >&5 "conftest.c", line 123: warning: statement not reached cc: Fatal error in cc : Segmentation Fault configure.sh:5448: $? = 1 configure.sh: program exited with status 1 

分段故障? 什么可能导致一个简单的testing脚本在编译期间段错误?

我遇到了同样的问题,但不能使用-xc99=all,no_lib解决方法(我正在构build的程序需要所有c99function),并尝试在truss下手动运行cc命令。 它显示刚刚尝试打开/lib/values-xpg6.o后发生段/lib/values-xpg6.o 。 该文件不存在,但在SUNWarc软件包中可用。 我安装了,segfault走了。

我不完全确定根本原因是什么,但这应该有助于上述解决方法失败的任何人。

选项-xc99=all导致段错误。 该选项的说明可以在这里find,默认是-xc99=all,no_lib (这不会导致编译器出现段错误)。

为了使configure脚本工作,我编辑了configure.sh并将-xc99=all的实例replace为-xc99=all,no_lib

回答我自己的问题,以便其他遇到此问题的人可能会尝试build立解决方法。