如何解决 LoadError: cannot load such file -- ffi_c

Yuy*_*shi 7 ruby windows installation gem

我想知道如何解决require在安装Ruby 2.2.1Windows 安装程序和Ruby gem 2.4.6.

LoadError: cannot load such file -- ffi_c
        from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_req
uire.rb:54:in `require'
Run Code Online (Sandbox Code Playgroud)

这是像DLL吗?

shi*_*vam 7

如果您阅读 的需求文档ffi,您可以看到:

您需要一个健全的构建环境才能编译扩展。您至少需要:

  • AC 编译器(例如 OSX 上的 Xcode,其他所有东西上的 gcc)
  • libffi 开发库 - 这通常在 libffi-dev 或 libffi-devel 中

这意味着 gem 不是预编译的,并且必须在安装时编译代码。这反过来意味着如果您在 PC 上运行,您将需要安装适用于 Windows 的 Ruby 开发工具包,又名“ devkit ”,您可以从rubyinstaller 站点的下载页面获取它

首先下载并安装 devkit,然后打开一个新的命令行窗口,然后是:

gem install ffi
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅此 SO:https : //stackoverflow.com/a/7988119/3035830

  • 在避免使用 Ruby 2.2.1 (x64) 的最新版本而使用 2.0.0-p643 (x64) 之后,安装 Ruby、其 gem 和 devkit 都成功了。 (3认同)