From: ngotogenome@...
Date: 2014-04-04T14:21:37+00:00
Subject: [ruby-dev:48089] [ruby-trunk - Bug #9702] [Open] r45488以降、SolarisStudioで ext/readline がコンパイルエラー(readline 6.2使用)

Issue #9702 has been reported by Naohisa Goto.

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

* Author: Naohisa Goto
* Status: Open
* Priority: Normal
* Assignee: 
* Category: ext
* Target version: 
* ruby -v: ruby 2.2.0dev (2014-04-04) [sparc64-solaris2.10]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
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)


-- 
https://bugs.ruby-lang.org/