使用wxRuby时遇到问题

时间:2011-04-29 02:28:47

标签: ruby user-interface path rubygems wxruby

我正在尝试使用wxRuby创建我的第一个GUI。我安装了wxRuby(使用gem install wxruby-ruby19),它似乎安装得很好。我直接从wxRuby站点复制了一些代码。这是我使用的代码:

test.rb

require "wx"
include Wx

class MinimalApp < App
  def on_init
    Frame.new(nil, -1, "The Bare Minimum").show()
  end
end

MinimalApp.new.main_loop

当我运行它时,我收到了这个错误:

<internal:lib/rubygems/custom_require>:29:in `require': libwx_gtk2u_stc-2.8.so.0: cannot open shared object file: No such file or directory - /usr/local/ruby/lib/ruby/gems/1.9.1/gems/wxruby-ruby19-2.0.1-x86-linux/lib/wxruby2.so (LoadError)
from <internal:lib/rubygems/custom_require>:29:in `require'
from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/wxruby-ruby19-2.0.1-x86-linux/lib/wx.rb:12:in `<top (required)>'
from <internal:lib/rubygems/custom_require>:33:in `require'
from <internal:lib/rubygems/custom_require>:33:in `rescue in require'
from <internal:lib/rubygems/custom_require>:29:in `require'
from test.rb:2:in `<main>'

我以为是说wxruby不在那个目录中,但我查了一下,所以我不确定是什么问题。如果有人可以提供帮助,那就太棒了。

2 个答案:

答案 0 :(得分:3)

我尝试了同样的事情并得到了同样的结果。

事实证明,有2个wxRuby宝石。如果您使用的是Ruby 1.9x,那么您需要wxRuby-ruby19。 (gem install wxruby-ruby19)。

我卸载了我第一次安装的wxruby gem(gem uninstall wxruby),然后为我的Ruby版本安装了gem(gem install wxruby-ruby19)。还有瞧!所有示例代码都正常工作。无需额外下载。

答案 1 :(得分:1)

要使用wxRuby,您需要安装wxWidgets(在您的情况下为wxGTK)。 问题是wxRuby使用wxWidgets共享库(例如libwx_gtk2u_stc-2.8.so.0)并且无法找到它们。