Erlang / OTP ./configure failure打开Solaris

时间:2011-08-01 12:47:08

标签: c++ linux gcc erlang solaris

在Open Solaris上为OTP14BO3运行./configure。部分输出在这里:

Ignoring the --cache-file argument since it can cause the system to be erroneously configured
Disabling caching
checking build system type... i386-pc-solaris2.11
checking host system type... i386-pc-solaris2.11
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for ld... ld
checking for GNU make... yes (gmake)
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether ln -s works... yes
checking for ranlib... ranlib
checking ERTS version... 5.8.4
checking OTP release... R14B03
configure: creating ./config.status
config.status: creating Makefile
config.status: creating make/emd2exml
configure: configuring in lib
configure: running /bin/sh '/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/configure' --prefix=/usr/local  --cache-file=/dev/null --srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib
configure: creating ./config.status
configure: configuring in snmp/.
configure: running /bin/sh '/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/snmp/./configure' --prefix=/usr/local  '--prefix=/usr/local' '--cache-file=/dev/null' '--srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib' --cache-file=/dev/null --srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/snmp/.
checking build system type... i386-pc-solaris2.11
checking host system type... i386-pc-solaris2.11
checking for perl... perl
configure: creating ./config.status
config.status: creating mibs/Makefile
configure: configuring in common_test/.
configure: running /bin/sh '/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/common_test/./configure' --prefix=/usr/local  '--prefix=/usr/local' '--cache-file=/dev/null' '--srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib' --cache-file=/dev/null --srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/common_test/.
checking build system type... i386-pc-solaris2.11
checking host system type... i386-pc-solaris2.11
configure: creating ./config.status
config.status: creating priv/i386-pc-solaris2.11/Makefile
configure: configuring in diameter/.
configure: running /bin/sh '/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/diameter/./configure' --prefix=/usr/local  '--prefix=/usr/local' '--cache-file=/dev/null' '--srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib' --cache-file=/dev/null --srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/diameter/.
checking build system type... i386-pc-solaris2.11
checking host system type... i386-pc-solaris2.11
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking how to create a directory including parents... /usr/bin/ginstall -c -d
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/app/diameter.mk
config.status: creating make/i386-pc-solaris2.11/rules.mk
configure: configuring in erl_interface/.
configure: running /bin/sh '/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/erl_interface/./configure' --prefix=/usr/local  '--prefix=/usr/local' '--cache-file=/dev/null' '--srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib' --cache-file=/dev/null --srcdir=/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/erl_interface/.
checking build system type... i386-pc-solaris2.11
checking host system type... i386-pc-solaris2.11
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... /lib/cpp
configure: error: C preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
configure: error: /bin/sh '/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/erl_interface/./configure' failed for erl_interface/.
configure: error: /bin/sh '/export/home/muzaaya/Desktop/software/otp_src_R14B03/lib/configure' failed for lib

config.log的部分内容是:

configure:2455: gcc -Ae -c -g -O2  conftest.c >&5
:0:1: error: missing '(' after predicate
conftest.c:10:19: fatal error: stdio.h: No such file or directory
compilation terminated.
configure:2461: $? = 1
configure: failed program was:
| /* confdefs.h.  */

它说缺少头文件。我怎么能绕过这个?

1 个答案:

答案 0 :(得分:1)

源代码中某处似乎存在语法错误,因此无论如何你的头文件可能都存在,GCC有时并不那么聪明,会给你一个无关的错误。

一些谷歌搜索显示this。显然你不得不捣乱一下。你试过试试吗?