--host=i586-mingw32msvc

e$B?\F#$G$9!#e(B

–host=i586-mingw32msvce$B$Ge(Bconfiguree$B$7$Fe(Bmsvcrc-ruby190.dlle$B$r%/e(B
e$B%m%9%3%s%Q%$%k$G%S%k%I$9$k$?$a$N%Q%C%A$G$9!#0J2<$,@.8y$9$k$he(B
e$B$&$K$J$j$^$9!#e(B

% ./configure --host=i586-mingw32msvc
% make msvcrt-ruby190.dll

e$B%/%m%9%3%s%Q%$%k$r$7$F$$$k$H$-!"e(B.rbe$B$NCf$+$ie(Bsysteme$B$de(Bpopene$B$J$Ie(B
e$B$7$F30It%W%m%;%9$r5/F0$9$k$H%?!<%2%C%H%[%9%H>e$N4D6-$G<B9T$5e(B
e$B$l$F$7$^$&$N$G$&$^$/$J$$$G$9!#e(B

ext/extmk.rbe$B$bCf$Ge(Bsysteme$B$7$J$$$h$&$K$9$k$He(Bext/e$B0J2<$b%/%m%9e(B

e$B%3%s%Q%$%k$G$-$k$+$b!#e(B

Index: cygwin/GNUmakefile.in

— cygwin/GNUmakefile.in (revision 15591)
+++ cygwin/GNUmakefile.in (working copy)
@@ -60,15 +60,24 @@

GNUmakefile: $(srcdir)/cygwin/GNUmakefile.in

-ifeq (@target_os@,mingw32)
+ifneq ($(findstring mingw32,@target_os@),)
$(OBJS) $(MAINOBJ): win32.h

$(LIBRUBY_SO): $(RUBYDEF)

+ifeq (@target_os@,mingw32)
$(RUBYDEF): $(LIBRUBY_A) $(PREP) $(RBCONFIG)
$(MINIRUBY) $(srcdir)/win32/mkexports.rb -output=$@ $(LIBRUBY_A)
+else
+$(RUBYDEF): $(LIBRUBY_A) $(PREP) $(RBCONFIG)

  • $(NM) --extern --defined $(LIBRUBY_A) | \
  • $(MINIRUBY) $(srcdir)/win32/mkexports.rb -output=$@
    endif

+clean-local::

  • @$(RM) $(RUBYDEF)
    +endif

ifeq (@target_os@,cygwin)
cygwin-$(RUBY_INSTALL_NAME)$(MAJOR)$(MINOR)$(TEENY).dll: $(LIBRUBY_A)
@NM@ --extern --defined $(LIBRUBY_A) |
Index: win32/mkexports.rb

— win32/mkexports.rb (revision 15591)
+++ win32/mkexports.rb (working copy)
@@ -112,6 +112,18 @@
end
end

+class Exports::MinGW32MSVC < Exports

  • def each_export(objs)
  • ARGF.each {|l| yield $1 if / [[:upper:]] _(.*)$/ =~ l}
  • yield “strcasecmp”, “_stricmp”
  • yield “strncasecmp”, “_strnicmp”
  • end
  • def symbols()
  • @syms.select {|k, v| v}.sort.collect {|k, v| “#{k}=#{v}”}
  • end
    +end

class Exports::Mingw < Exports
def self.nm
@@nm ||= RbConfig::CONFIG[“NM”]

e$B$J$+$@$G$9!#e(B

At Sun, 24 Feb 2008 20:48:47 +0900,
Kouhei S. wrote in [ruby-dev:33926]:

–host=i586-mingw32msvce$B$Ge(Bconfiguree$B$7$Fe(Bmsvcrc-ruby190.dlle$B$r%/e(B
e$B%m%9%3%s%Q%$%k$G%S%k%I$9$k$?$a$N%Q%C%A$G$9!#0J2<$,@.8y$9$k$he(B
e$B$&$K$J$j$^$9!#e(B

% ./configure --host=i586-mingw32msvc
% make msvcrt-ruby190.dll

e$B%/%m%9%3%s%Q%$%k$r$7$F$$$k$H$-!"e(B.rbe$B$NCf$+$ie(Bsysteme$B$de(Bpopene$B$J$Ie(B
e$B$7$F30It%W%m%;%9$r5/F0$9$k$H%?!<%2%C%H%[%9%H>e$N4D6-$G<B9T$5e(B
e$B$l$F$7$^$&$N$G$&$^$/$J$$$G$9!#e(B

e$B$3$3$,$A$g$C$H$h$/$o$+$i$J$$$N$G$9$,!"$I$&$$$&0UL#$G$7$g$&$+!#$=e(B
e$B$b$=$b%/%m%9%3%s%Q%$%k$N>l9g$K$O!“e(Bminirubye$B$r<B9T$9$k$H$$$&$3$H<+e(B
e$BBN$,$”$j$($J$$$O$:$G$9!#e(B

e$B?\F#$G$9!#e(B

In [email protected]
“[ruby-dev:33927] Re: --host=i586-mingw32msvc” on Sun, 24 Feb 2008
21:32:04 +0900,
Nobuyoshi N. [email protected] wrote:

e$B%/%m%9%3%s%Q%$%k$r$7$F$$$k$H$-!"e(B.rbe$B$NCf$+$ie(Bsysteme$B$de(Bpopene$B$J$Ie(B
e$B$7$F30It%W%m%;%9$r5/F0$9$k$H%?!<%2%C%H%[%9%H>e$N4D6-$G<B9T$5e(B
e$B$l$F$7$^$&$N$G$&$^$/$J$$$G$9!#e(B

e$B$3$3$,$A$g$C$H$h$/$o$+$i$J$$$N$G$9$,!"$I$&$$$&0UL#$G$7$g$&$+!#$=e(B
e$B$b$=$b%/%m%9%3%s%Q%$%k$N>l9g$K$O!“e(Bminirubye$B$r<B9T$9$k$H$$$&$3$H<+e(B
e$BBN$,$”$j$($J$$$O$:$G$9!#e(B

e$B$?$7$+$K$=$&$G$9$M!#e(B
.exee$B$,>!<j$Ke(BWinee$B$G<B9T$5$l$?$N$G5$$E$-$^$;$s$G$7$?!#e(B

e$B$o$?$J$Y$G$9!#e(B

Kouhei S. wrote:

–host=i586-mingw32msvce$B$Ge(Bconfiguree$B$7$Fe(Bmsvcrc-ruby190.dlle$B$r%/e(B
e$B%m%9%3%s%Q%$%k$G%S%k%I$9$k$?$a$N%Q%C%A$G$9!#0J2<$,@.8y$9$k$he(B
e$B$&$K$J$j$^$9!#e(B

% ./configure --host=i586-mingw32msvc
% make msvcrt-ruby190.dll

e$B:#8=:_;DG0$J$,$i$=$s$J4JC1$J;XDj$G$O%/%m%9%3%s%Q%$%k$G$-$^$;$s!#e(B
e$B$?$V$se(B
% ac_cv_func_getpgrp_void=no
ac_cv_func_setpgrp_void=yes
ac_cv_c_bigendian=no
ac_cv_sizeof_long_long=8
ac_cv_func_memcmp_working=yes
rb_cv_binary_elf=no
rb_cv_negative_time_t=no
./configure
–target=i386-mingw32
–host=i586-mingw32msvc
–build=i386-linux
e$B$0$i$$$N@Dj$,I,MW$K$J$j$^$9!#e(Brubye$B$H$$$&L>A0$Ge(B1.9e$B$,8F$Y$J$$>l9g$Oe(B
e$B$5$i$K4D6-JQ?te(BRUBYe$B$Ke(Bruby-1.9e$B$H$+e(B–with-baseruby=ruby-1.9e$B$bI,MW$G$9!#e(B
e$B$+$J$jLLE]$G$9!#$=$l$G$b8=:
$N$H$3$mESCf$G%(%i!<$K$J$j$^$9$,!#e(B
mkmf.rb can’t find header files for ruby at
/usr/local/lib/ruby/include/ruby.h

e$B%/%m%9%3%s%Q%$%k$r$7$F$$$k$H$-!"e(B.rbe$B$NCf$+$ie(Bsysteme$B$de(Bpopene$B$J$Ie(B
e$B$7$F30It%W%m%;%9$r5/F0$9$k$H%?!<%2%C%H%[%9%H>e$N4D6-$G<B9T$5e(B
e$B$l$F$7$^$&$N$G$&$^$/$J$$$G$9!#e(B

e$B<B9T$7$F$7$^$&$N$Oe(B–target, --host, --builde$B$re(B
e$B@5$7$/@_Dj$7$F$J$$$+$i$@$H;W$$$^$9!#e(B
e$B$=$l$He(Bwinee$B$G<B9T$G$-$k$h$&$K$7$F$k$;$$$Ge(B
e$BCfESH>C<$K$&$^$/$$$C$F$7$^$$M>7W$^$:$$$G$9$M!#e(B

e$B?\F#$G$9!#e(B

In [email protected]
“[ruby-dev:33929] Re: --host=i586-mingw32msvc” on Sun, 24 Feb 2008
22:57:03 +0900,
WATANABE Hirofumi [email protected] wrote:

ac_cv_func_setpgrp_void=yes \

e$B$5$i$K4D6-JQ?te(BRUBYe$B$Ke(Bruby-1.9e$B$H$+e(B–with-baseruby=ruby-1.9e$B$bI,MW$G$9!#e(B
e$B$+$J$jLLE]$G$9!#$=$l$G$b8=:_$N$H$3$mESCf$G%(%i!<$K$J$j$^$9$,!#e(B
mkmf.rb can’t find header files for ruby at /usr/local/lib/ruby/include/ruby.h

e$BBgJQ$G$9$M!#!#!#e(B

e$B$=$l$He(Bwinee$B$G<B9T$G$-$k$h$&$K$7$F$k$;$$$Ge(B
e$BCfESH>C<$K$&$^$/$$$C$F$7$^$$M>7W$^$:$$$G$9$M!#e(B

MinGW + Winee$B$G$N%3%s%Q%$%k$r%5%]!<%H$9$k$H$$$&$N$O$"$j$($k$Ge(B
e$B$7$g$&$+!)e(B