わたなべです。

Koji Arai <JCA02266 / nifty.ne.jp> writes:

> EWS4800 では、cc の -o オプションの仕様が以下のようになってます(man cc より)
> 
>           -o pathname
>                     Specify the pathname of  the  final  output  file.
>                     This  is  a  link editor option.  Therefore, it is
>                     ignored when you specify it with  the  -c  option.
>                     You cannot use the following suffixes for the file
>                     name specified by pathname.
> 
>                          .c, .C, .p, .f, .F, .r, .e, .i, or .s
> 
> これにより、-o conftest.i の指定を受け付けず、have_header() 
> の結果がコンパイルエラー(というかプリプロセスエラー)になって
> ます。

これは
  % echo 'foo(){}' >foo.c
  % cc -E -o foo.i foo.c
がエラーになるということですか?
あ、suffixとして.iはだめなのか。
  % cc -E -o foo.inc foo.c
ならok?

> 根拠のない予想ですが、もしかすると autoconf の 
> AC_PROG_CC_C_O にひっかかる環境は同じことになるのかもしれま
> せん。

どっちかというとAC_PROG_CC_E_Oかなあ。そんなマクロはないけど。
RUBY_PLATFORMで判断してるものはrbconfig.rbへ追い出そうと考え
ているので、configure.inで${CPP} -oをcheckしようと思います。

-- 
わたなべひろふみ