Forum: Ruby-dev [ruby-trunk - Bug #9702] r45488以降、SolarisStudioで ext/readline がコンパイルエラー(readline 6.2使用)

F1d6cc2b735bfd82c8773172da2aeab9?d=identicon&s=25 Nobuyoshi Nakada (nobu)
on 2014-04-28 06:13
(Received via mailing list)
Issue #9702 has been updated by Nobuyoshi Nakada.

Description updated
Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN to 2.0.0: REQUIRED,
2.1: REQUIRED

----------------------------------------
Bug #9702: r45488以降、SolarisStudioで ext/readline がコンパイルエラー(readline
6.2使用)
https://bugs.ruby-lang.org/issues/9702#change-46346

* Author: Naohisa Goto
* Status: Closed
* Priority: Normal
* Assignee:
* Category: ext
* Target version:
* ruby -v: ruby 2.2.0dev (2014-04-04) [sparc64-solaris2.10]
* Backport: 2.0.0: REQUIRED, 2.1: REQUIRED
----------------------------------------
r45488以降、Solarisにて、`ext/readline` が下記のようにコンパイルエラーになります。コンパイラは
SolarisStudio 12.3 です。
readline 6.2 との組み合わせになります。

~~~
(前略)
cd ext/readline && exec make -w V=1 all
make[2]: Entering directory `/XXXXXXXXXX/ext/readline'
cc -I. -I../../.ext/include/sparc64-solaris2.10 -I../.././include
-I../.././ext/readline -DRUBY_EXTCONF_H=\"extconf.h\"
-I/usr/local/64/lib/libffi-3.0.10/include -I/usr/local/64/include
-KPIC  -xO1 -xtarget=sparc64viiplus -m64 -o readline.o -c readline.c
"/usr/local/64/include/readline/rltypedefs.h", line 61: identifier
redeclared: Function
        current : function(void) returning int
        previous: function() returning int :
"/usr/local/64/include/readline/rltypedefs.h", line 34
cc: acomp failed for readline.c
make[2]: *** [readline.o] Error 2
make[2]: Leaving directory `/XXXXXXXXXX/ext/readline'
make[1]: *** [ext/readline/all] Error 2
make[1]: Leaving directory `/XXXXXXXXXX'
make: *** [build-ext] Error 2
~~~

`ext/readline/extconf.rb` の `readline.have_type("rl_hook_func_t")` に、
`rl_hook_func_t` は存在するはずにもかかわらず、失敗しているのが原因のようです。

`extconf.h` と `mkmf.log` を添付します。


---Files--------------------------------
extconf.h (1.39 KB)
mkmf.log (73.8 KB)
This topic is locked and can not be replied to.