わたなべです。

kensaku Maki <sakaki / lares.dti.ne.jp> writes:

> > have_func: checking for socket()... --------------------
> > gcc -o conftest -I/usr/local/lib/ruby/1.8/i386-cygwin 
> > -I/usr/local/lib/ruby/1.8/i386-cygwin -I/usr/local/cygwin-local/include conftest.c 
> > -L/usr/local/lib -L/usr/local/cygwin-local/lib -lcygwin-ruby18-static
> >
> > /usr/local/lib/ruby/1.8/mkmf.rb:154: warning: 
> > Insecure world writable dir /usr/local/bin, mode 040777
> > /usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld:
> > cannot find -lcygwin-ruby18-static
> >
> > collect2: ld returned 1 exit status
> > checked program was:
> > /* begin */
> > 
> > int main() { return 0; }
> > int t() { socket(); return 0; }
> > /* end */

ここで-lcygwin-ruby18-staticが見つからないと言っているのが原因です。
正しくインストールされれば
  /usr/local/lib/libcygwin-ruby18-static.a
が存在し、見つけてくれるはずです。

> ほぼ同じ処理が2回繰返されているのが気になります。

プロトタイプ宣言の有無でシンボルが変化する環境への対応のためです。

-- 
わたなべひろふみ