前言:我在 Windows 8 机器上,运行 Ruby 2.0.0。
我最近gamebox
为 Ruby 安装了 gem。在安装其所有依赖项的过程中,由于 中的一些 ASCII/Unicode 问题,一些文件(其中包括 file $RUBYHOME/lib/ruby/gems/2.0.0/gems/gosu-0.7.50-x86-mingw32/lib/gosu.for_1_9.so
)没有正确构建rdoc
,因此被“跳过”。起初我并没有太在意它,但是当我尝试运行gamebox test_game
设置新gamebox
游戏时,它向我吐出以下消息:
C:/Ruby200/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:118:in `require': 126: The specified module could not be found. - C:/Ruby200/lib/ruby/gems/2.0.0/gems/gosu-0.7.50-x86-mingw32/lib/gosu.for_1_9.so (LoadError)
from C:/Ruby200/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:118:in `rescue in require'
from C:/Ruby200/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:124:in `require'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/gosu-0.7.50-x86-mingw32/lib/gosu.rb:11:in `<top (required)>'
from C:/Ruby200/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:114:in `require'
from C:/Ruby200/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:114:in `require'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/gamebox-0.5.0/lib/gamebox.rb:5:in `<top (required)>'
from C:/Ruby200/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:66:in `require'
from C:/Ruby200/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:66:in `require'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/gamebox-0.5.0/bin/gamebox:4:in `<top (required)>'
from C:/Ruby200/bin/gamebox:23:in `load'
from C:/Ruby200/bin/gamebox:23:in `<main>'
重要的一点是The specified module could not be found. - C:/Ruby200/lib/ruby/gems/2.0.0/gems/gosu-0.7.50-x86-mingw32/lib/gosu.for_1_9.so
然后我回过头来意识到整个 Unicode 的东西,rdoc
按照这个家伙更新到最新版本,然后跑gem uninstall gosu
了gem install gosu
. 一切似乎都构建得很好,而且我看到所需的文件 ..../gosu.for_1_9.so
就在它需要的位置。
但是,我仍然收到关于无法找到的完全相同的错误gosu.for_1_9.so
!
我已经能够找到其他人遇到此问题的两个 Google 结果。在一种情况下,这个问题是次要的,因为这个人正在对他的gosu
安装进行一些黑客攻击;另一方面,解决方案是“Ruby 2 不好,你应该使用 Ruby 1.9”,这真的不是我的首选。
有任何想法吗?