From: "akira yamada / やまだあきら" Date: 1999-10-29T00:41:18+09:00 Subject: [ruby-dev:8128] ext/socket/extconf.rb しばらく前から Debian GNU/Linux (potato) な環境, すなわち glibc2 2.1.2 な Linux 環境で Ruby での IPv6 サポートをためそうといろいろやってみていたのですが, ことごとく extconf.rb のチェックでコケていました. しかし今日になって CVS の方から checkout して --enable-ipv6 で make したらチェックにひっかかることなく make が終了しました. で, 1.4.2 と 1.5 の diff をとったところ @@ -4,6 +4,10 @@ #include #include +#ifndef AF_LOCAL +#define AF_LOCAL AF_UNIX +#endif + main() { int passive, gaierr, inet4 = 0, inet6 = 0; @@ -20,6 +24,7 @@ goto bad; } for (ai = aitop; ai; ai = ai->ai_next) { + if (ai->ai_family == AF_LOCAL) continue; if (ai->ai_addr == NULL || ai->ai_addrlen == 0 || getnameinfo(ai->ai_addr, ai->ai_addrlen, というような差しか(問題だったチェックコードには)ありませんでした. で, 1.4.2 のものの方ではいぜんとしてチェックに ひっかかってしまうところを見ると チェック内容に問題があったということかな? とも思うのですが そのあたりどうなのでしょうか? もしもそういうことなら 1.5 の extconf.rb を 1.4.2 にいれてしまおうかと思っているのですが, そうしても問題ないでしょうか? # あるいは一見チェックをパスしているように見えて # 実はそうではなかったりするのでしょうか. -- やまだ あきら (akira@arika.org or akira@nurs.or.jp)