在OS X v10.6 +中是否有一种简单的方法可以为Ruby启用Tk?

时间:2011-06-12 09:42:20

标签: ruby macos tk

从Snow Leopard开始(OS X v10.6)Apple默认捆绑64位ruby。不幸的是,没有捆绑的64位Tk,因此以下ruby代码将失败:

require 'tk'

在Snow Leopard和更高版本中为Ruby启用Tk是否容易?喜欢安装32位红宝石或其他什么。我试图用Tk支持重新编译Ruby,但似乎并不那么容易 - 谷歌中的教程指的是Ruby的./configure脚本中的一些选项,这些选项在从官方网站下载的实际Rby代码中不存在:(。我将很高兴任何提示 - 我有一个带有Tk GUI的Ruby应用程序,需要让我的用户使用它:)

2 个答案:

答案 0 :(得分:1)

在OSX上,Tk在64位模式下构建良好,但前提是你已经获得了8.6系列«ZIP» «TGZ»的来源(由于各种原因仍处于测试阶段,但非常有用)。您当然希望确保配置--enable-aqua --enable-64bit,但我认为这非常明显。

(唉,我不能说如何将Tk的构建与你的Ruby安装集成,尽管some documentation online似乎有点相关。我强调我只是用Google搜索了它;在这方面,我不会从经验中说出来。)

答案 1 :(得分:0)

最近对Tk文档的改进很大。他们没有complete instructions关于如何在OSX 10.6+上为Ruby启用Tk。这需要ActiveTcl 8.5+二进制分发并从源代码编译ruby。我用OSX 10.7上的命令和XCode 4.2编译ruby并替换库存ruby安装(危险!):

./configure --prefix=/usr --with-arch=x86_64,i386 --enable-pthread --enable-shared --with-gcc=clang
make
sudo make install