首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mruby-需要错误: NoMethodError: main的未定义方法puts

mruby-需要错误: NoMethodError: main的未定义方法puts
EN

Stack Overflow用户
提问于 2015-06-30 14:11:29
回答 1查看 464关注 0票数 0

我成功地编译了mruby代码,添加了来自https://github.com/mattn/mruby-require的mrubygem - mruby-require。

但是,当我试图调用require‘/’时,我得到了一个错误。下面是我的代码:

inc.rb

代码语言:javascript
复制
def test(a, b)
    print "Inside the include->test(..)"
    return a+b
end

test1.rb

代码语言:javascript
复制
require 'inc.rb'

def helloworld(var1)
    print 'hello world ' + var1 + ". Test number = " + test(4, 5)

end

helloworld('test')

当我执行test1.rb时,我从mruby获得这个错误:

代码语言:javascript
复制
NoMethodError: undefined method 'puts' for main

经过一些分析,我发现“out”并不适用于mruby。事实上,在添加mruby-require gem之后,就不会执行任何ruby代码。我是否需要在mruby需求中添加任何依赖项?

有人能帮帮我吗?

更新:根据请求粘贴build_config.rb的内容。我已经删除了评论的行。

build_config.rb

代码语言:javascript
复制
MRuby::Build.new do |conf|

  if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
    toolchain :visualcpp
  else
    toolchain :gcc
  end

  enable_debug

  # adding the mruby-require library
  conf.gem 'mrbgems/mruby-require'

  conf.gembox 'default'


end

MRuby::Build.new('host-debug') do |conf|

  if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
    toolchain :visualcpp
  else
    toolchain :gcc
  end

  enable_debug

  conf.gembox 'default'


  conf.cc.defines = %w(ENABLE_DEBUG)


  conf.gem :core => "mruby-bin-debugger"


end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-01 02:30:01

下面的引号来自它的README.md

当使用mruby- required时,必须使用build_config.rb中出现在mruby后的其他mrbgems。

这是你的build_config.rb

代码语言:javascript
复制
  conf.gem 'mrbgems/mruby-require'

  conf.gembox 'default'

mruby-print。所以要么需要mruby-print,要么最好交换行,使其成为内置的gem (没有mruby-require的默认行为)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31140687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档