mruby をWindowsのVC++でコンパイル ・・・ 失敗

mrbc.exe と、libmruby_core.libまではコンパイルできますた。
  • BISON
  • VC++
  • CRuby

が必要です。
BISONは、GnuWin32のBisonではm4でエラーになるので、下記サイトのBISONを使用。
ただし、パスを通しておくこと。
また、”win_bison.exe” を “bison.exe”にリネームしておかないと、minirakeに失敗します。
http://sourceforge.jp/projects/sfnet_winflexbison/
で、cmd を開いて、VCのサブフォルダにある”vcvars.bat”実行します。
(自分の環境では、”C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin”にありました)
で、”build_config.rb”を下記のようにカスタマイズ。


MRuby::Build.new do |conf|
  # load specific toolchain settings

  # Gets set by the VS command prompts.
  if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR'] || true
    toolchain :visualcpp
  else
    toolchain :gcc
  end

  enable_debug

  # Use mrbgems
  # conf.gem 'examples/mrbgems/ruby_extension_example'
  # conf.gem 'examples/mrbgems/c_extension_example' do |g|
  #   g.cc.flags << '-g' # append cflags in this gem
  # end
  # conf.gem 'examples/mrbgems/c_and_ruby_extension_example'
  # conf.gem :github => 'masuidrive/mrbgems-example', :checksum_hash => '76518e8aecd131d047378448ac8055fa29d974a9'
  # conf.gem :git => 'git@github.com:masuidrive/mrbgems-example.git', :branch => 'master', :options => '-v'

  # include the default GEMs
  conf.gembox 'default'

  # C compiler settings
  # conf.cc do |cc|
  #   cc.command = ENV['CC'] || 'gcc'
  #   cc.flags = [ENV['CFLAGS'] || %w()]
  #   cc.include_paths = ["#{root}/include"]
  #   cc.defines = %w(DISABLE_GEMS)
  #   cc.option_include_path = '-I%s'
  #   cc.option_define = '-D%s'
  #   cc.compile_options = "%{flags} -MMD -o %{outfile} -c %{infile}"
  # end

  # mrbc settings
  conf.mrbc do |mrbc|
    mrbc.compile_options = "-g -B%{funcname} -o-" # The -g option is required for line numbers
  end

  # Linker settings
  conf.linker do |linker|
    linker.command = ENV['LD'] || 'cl' #'gcc'
    linker.flags = [ENV['LDFLAGS'] || []]
    linker.flags_before_libraries = []
    linker.libraries = %w()
    linker.flags_after_libraries = []
    linker.library_paths = []
    linker.option_library = '-l%s'
    linker.option_library_path = '-L%s'
    linker.link_options = "%{flags} -o %{outfile} %{objs} %{libs}"
  end

  # Archiver settings
  conf.archiver do |archiver|
    archiver.command = ENV['AR'] || 'lib' #'ar'
    archiver.archive_options = '/out:%{outfile} %{objs}'
  end

  # Parser generator settings
  conf.yacc do |yacc|
    yacc.command = ENV['YACC'] || 'bison'
    yacc.compile_options = '-o %{outfile} %{infile}'
  end

  # gperf settings
  # conf.gperf do |gperf|
  #   gperf.command = 'gperf'
  #   gperf.compile_options = '-L ANSI-C -C -p -j1 -i 1 -g -o -t -N mrb_reserved_word -k"1,3,$" %{infile} > %{outfile}'
  # end

  # file extensions
  conf.exts do |exts|
    exts.object = '.obj'
    exts.executable = '' # '.exe' if Windows
    exts.library = '.lib'
  end

  # file separetor
  # conf.file_separator = '/'

  # bintest
  # conf.enable_bintest
end

MRuby::Build.new('host-debug') do |conf|
  # load specific toolchain settings

  # Gets set by the VS command prompts.
  if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR'] || true
    toolchain :visualcpp
  else
    toolchain :gcc
  end

  enable_debug

  # include the default GEMs
  conf.gembox 'default'

  # C compiler settings
  conf.cc.defines = %w(ENABLE_DEBUG)

  # Generate mruby debugger command (require mruby-eval)
  conf.gem :core => "mruby-bin-debugger"

  # bintest
  # conf.enable_bintest
end

# Define cross build settings
# MRuby::CrossBuild.new('32bit') do |conf|
#   toolchain :gcc
#
#   conf.cc.flags << "-m32"
#   conf.linker.flags << "-m32"
#
#   conf.build_mrbtest_lib_only
#
#   conf.gem 'examples/mrbgems/c_and_ruby_extension_example'
#
#   conf.test_runner.command = 'env'
#
# end

エラー

エラー

> ruby .\minirake

しましたが、上記画面のようにエラーとなっています。

orz