概要
MRubyCompiler.CompileFile() を実行すると、Windows 環境で以下の例外が発生します。
Unable to find an entry point named 'mrc_ccontext_filename' in DLL 'libmruby'.
再現手順
- Windows 環境で ChibiRuby.Compiler を利用する
- MRubyCompiler.CompileFile(path) を呼び出す
- 上記の EntryPointNotFoundException が発生する
原因調査
src/ChibiRuby.Compiler/mrbgems/chibiruby-compiler/chibiruby-compiler.def を確認したところ、EXPORTS に mrc_ccontext_filename が含まれていませんでした。
LIBRARY libmruby.dll
EXPORTS
mrb_open
mrb_close
mrb_free
chibiruby_free
mrc_ccontext_new
mrc_ccontext_free
mrc_load_string_cxt
mrc_dump_irep
mrc_irep_free
mrc_diagnostic_list_free
提案する修正
chibiruby-compiler.def の EXPORTS に mrc_ccontext_filename を追加する。
環境
- OS: Windows 11
- ChibiRuby.Compiler 1.6.1
概要
MRubyCompiler.CompileFile()を実行すると、Windows 環境で以下の例外が発生します。再現手順
原因調査
src/ChibiRuby.Compiler/mrbgems/chibiruby-compiler/chibiruby-compiler.defを確認したところ、EXPORTSにmrc_ccontext_filenameが含まれていませんでした。提案する修正
chibiruby-compiler.defのEXPORTSにmrc_ccontext_filenameを追加する。環境