2

我编写了一堆 Ruby 脚本,它们集成了不同的工具来创建“学术工作流程”。我的一些朋友对尝试这个非常感兴趣,但是他们对安装或复制我的环境的难度感到犹豫。

尽管 Ruby 内置于 Mac OSX 中(我集成的应用程序都是 Mac 应用程序,所以不幸的是该解决方案只能在 Mac 上运行),但我使用了一些二进制 gem,包括 Appscript(AppleScript 的桥)。问题是这需要 XCode,我的非程序员朋友没有安装它(要求他们安装 3GB 的软件来运行几 kbs 的代码似乎有点要求)。

我尝试通过使用 gem -i 将 gem 安装到源的子目录(在 github 上)来冻结 gem,并尝试在本地计算机上删除我的整个中央 gems 目录 - 它工作正常,脚本仍然运行等。但是,当我的朋友尝试运行脚本时,他们收到有关缺少库文件等的错误消息。

所以我的两个问题是: * 编译的二进制 gem 的具体程度如何?他们能在其他 Mac OSX 版本上工作吗?与其他版本的 Ruby?等 *我如何才能准确地找出 Ruby gem 依赖的二进制文件(位于中心位置),并将其与源打包(以及如何告诉 gem 在非标准位置找到这些文件的位置)

我知道这可能不是“标准程序”,我应该把它打包成一个 gem,让我的朋友处理问题等等——但我真的很想解决这个问题,我相信一定有一些方法这样做?

非常感谢

4

1 回答 1

0

以我的经验,编译的 gem 是不可移植的。它们依赖于 ruby​​ 的确切版本以及它们使用的任何其他库。更好的解决方案是让您的朋友安装 Xcode 的“命令行工具”版本——它只有 100-150 MB,包含构建 gem(和其他软件)所需的一切。不过,您需要一个(免费的)Apple Developer ID 才能下载它。

https://developer.apple.com/downloads?q=Command%20Line%20Tools

于 2013-03-07T00:51:23.220 回答