我开始在运行 Leopard 的 iMac 上学习 ruby 的基础知识。
我系统上现在的版本是 ruby 1.8.6
但是,我还独立安装了(通过 MacPorts)ruby 1.9,因为它对应于最新的“PickAxe”书。
ruby 1.8.6 的安装位置在 /usr/bin/ruby ruby 1.9.1 的安装位置在 /opt/local/bin (我使用 MacPorts 时安装在那里)
我的问题与以下相当标准的示例中与 require 'tk' 语句相关的错误消息有关,该示例位于文件 HelloWorld.rb 中
require 'tk'
root = TkRoot.new { title "Hello world" }
TkLabel.new(root) do
text 'Hello world!'
end
Tk.mainloop
当我调用命令 ruby HelloWorld.rb 我得到了我期望的结果;程序运行。
但是,当我调用命令 ruby1.9 HelloWorld.rb 我收到错误消息
HelloWorld.rb:1:in require': no such file to load -- tk (LoadError)
from HelloWorld.rb:1:in
'
我一直在搜索网络和各种帖子,但到目前为止,我还没有找到清楚的解释,说明我需要做什么才能使 ruby1.9 在使用 require 'tk' 语句时能够找到 tk。
它是否与运行 gem1.9 命令(也在 /opt/local/bin 中)有关?
我尝试调用 sudo gem1.9 install tk 但这会导致错误消息 ERROR: could not find gem tk local or in a repository
任何建议将不胜感激。