From: SHIROYAMA Takayuki Date: 2002-03-02T02:39:31+09:00 Subject: [ruby-dev:16160] Re: ruby 1.6.7 preview 2 しろやまです。ご無沙汰しております。 > > preview1には(やっぱり)いろいろ問題があったのでpreview2です。 > これで問題がなければいよいよ正式リリースです。 > > ftp://ftp.ruby-lang.org/pub/ruby/1.6/ruby-1.6.7-preview2.tar.gz > MacOS X 10.1.3にて、以下の障害がありました。 ext/socket/addrinfo.h にて定義されている gai_strerror()に 関して、同名の関数が /usr/include/netdb.h に定義されており、 かつ戻り値の型が違うため、getaddrinfo.cでコンパイルエラーを 起こします。 addrinfo.h: extern const char *gai_strerror __P((int)); netdb.h: char *gai_strerror __P((int)); MacOS X(Darwin)の方がgetaddrinfo()はあるのにgetnameinfo() がないため、extconf.rbの if $getaddr_info_ok and have_func("getaddrinfo") and have_func("getnameinfo") の条件が成立しないのが、getaddrinfo.c がコンパイルされて しまう理由です。 対症療法的には、 ext/socket/addrinfo.h と getaddrinfo.cの gai_strerror()の const char *を char*にしてしまえばコンパ イルは通ります。 これ自体は簡単なのですが、 const を取るというのは何なので、 どうしたものだかという感じです。 取り急ぎ、ご報告まで --- SHIROYAMA Takayuki