开发者

Compiling Ncurses on Solaris - "Compiler or options invalid for pre-UNIX 03 X/Open applications and pre-2001 POSIX applications"?

I'm trying to compile a GNU stack on Solaris 10 (x86).

I've managed to get the following up so far:

  • GMP
  • MPFR
  • MPC
  • GCC
  • binutils
  • libiconv
  • gettext

I'm currently trying to build Ncurses, and I'm hitting an error:

/db/pub/eq/tools/bin/g++ -I../c++ -I../include -I/db/pub/eq/src/ncurses-5.9/c++ -DHAVE_CONFIG_H   -D__EXTENSIONS__ -D_XOPEN_SOURCE=500 -D_FILE_OFFSET_BITS=64  -DNDEBUG -I. -I../include -I/db/pub/eq/src/ncurses-5.9/c++/../include -I/db/pub/eq/tools/include/ncurses -O2 -c /db/pub/eq/src/ncurses-5.9/c++/cursesf.cc -o ../objects/cursesf.o
<command-line>:0:0: warning: "_XOPEN_SOURCE" redefined [enabled by default]
<built-in>:0:0: note: this is the location of the previous definition
In file included from /usr/include/iso/stdlib_iso.h:30:0,
             from /usr/include/stdlib.h:18,
             from /db/pub/eq/src/ncurses-5.9/c++/internal.h:53,
             from /db/pub/eq/src/ncurses-5.9/c++/cursesf.cc:34:
/db/pub/eq/tools/lib/gcc/i386-pc-solaris2.10/4.6.1/include-fixed/sys/feature_tests.h:341:2: error: #error "Compiler or options invalid for pre-UNIX 03 X/Open applications      and pre-2001 POSIX applications"
*** Error code 1
make: Fatal error: Command failed for target `../objects/cursesf.o'
Current working directory /db/pub/eq/src/ncurses-5.9/c++
*** Error code 1
make: Fatal error: Command failed for target `all'

I'm not quite sure what the above error (Compiler or o开发者_如何学运维ptions invalid for pre-UNIX 03 X/Open applications and pre-2001 POSIX applications) means, or how to troubleshoot it.

I saw this error once before when I was building MPC (during gmake check), but I had no idea what it meant then, or how to fix it - but since it was in checks, it was ok.

Cheers, Victor


apply this patch to the configure script:

--- configure.orig  Fri Aug  5 14:28:28 2011
+++ configure       Fri Aug  5 14:31:11 2011
@@ -7246,7 +7246,7 @@
    # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
    ;;
 solaris2.1[0-9]) #(vi
-   cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
+   cf_xopen_source="-D__EXTENSIONS__"
    ;;
 solaris2.[1-9]) #(vi
    cf_xopen_source="-D__EXTENSIONS__"

Ncurses 5.6 did not define _XOPEN_SOURCE for solaris either.

Cheers

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜