4

我正在 Windows 中编写一些 ruby​​ 脚本,其中涉及打开和关闭浏览器。为此,我需要一些特殊的 gem 来连接本机 Windows 系统调用。但是当我尝试

> gem install sys-proctable

,它产生了

ERROR: Could not find a valid gem ´sys-proctable´ (>= 0), here is why: 
          Found sys-proctable (0.9.0), but was for platforms x86-darwin-8 
            ,x86-freebsd-7 ,x86-solaris-2.10 ,x86-linux ,x86-mswin32-60

问题是我的 gem 安装没有 x86-mswin32-60 ruby​​gems 平台

> gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.7
  - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [i386-mingw32]

  ...

  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-mingw32

  ...

似乎问题出在我的 ruby​​ 版本是用 mingw 库编译的。所以我的问题是:如何获得一个 ruby​​ 版本,其中 ruby​​gems 平台包括 x86-mswin32-60?我从 ruby​​installer.org 找不到任何不是 mingw 的安装程序。

- - 编辑 - -

最后一部分有点仓促。实际上,rubyinstaller.org 有传统的一键式安装程序,它们是为 mswin32 构建的。但是那个安装对我来说还有其他一些问题,所以我想我会尝试下面 Luis 的解决方案。

4

1 回答 1

8

您可以强制 gem 安装指定--platform选项:

gem install sys-proctable --platform=x86-mswin32-60

但是,我建议不要这样做,原因有几个,我在博客中提到了一些

在将基于此的代码推送到生产环境之前,请先进行测试,看看它是否可以工作。

希望有帮助。

于 2010-07-17T23:40:06.563 回答