You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装Rails报错:gem原生扩展构建失败,求解决方法

解决Windows 8下安装Rails时“Failed to build gem native extension”报错的方案

嘿,我之前在Windows环境下折腾Rails安装时也碰到过完全一样的问题,结合自己的踩坑经验和社区解决方案,给你几个亲测有效的办法:

1. 安装Ruby开发工具包(DevKit)

Windows系统本身没有原生编译环境,而很多Ruby gem依赖原生扩展编译,DevKit就是用来解决这个问题的:

  • 下载对应你Ruby版本的DevKit(你的Ruby是x64-mingw32,所以要选64位的DevKit,比如RubyInstaller提供的DevKit-mingw64-64版本)
  • 把DevKit解压到一个无中文、无空格的路径下,比如C:\DevKit
  • 打开CMD(建议以管理员身份运行),切换到DevKit目录:
    cd C:\DevKit
    
  • 初始化并关联到你的Ruby环境:
    ruby dk.rb init
    ruby dk.rb install
    

2. 手动指定SQLite3路径安装依赖

报错大概率和sqlite3 gem的编译有关,你已经装了SQLite3,但gem可能找不到它的头文件和库文件:

  • 找到你SQLite3的安装目录,确保里面有include(包含sqlite3.h)和lib(包含sqlite3.lib)文件夹
  • 执行以下命令安装sqlite3 gem,替换路径为你实际的SQLite3目录:
    gem install sqlite3 --platform=ruby -- --with-sqlite3-include=C:\你的SQLite3路径\include --with-sqlite3-lib=C:\你的SQLite3路径\lib
    
  • 成功安装sqlite3后,再尝试安装Rails:
    gem install rails
    

3. 直接使用RailsInstaller一键安装

如果手动配置太麻烦,推荐用官方的RailsInstaller工具,它会把Ruby、Rails、DevKit、SQLite3等所有依赖一次性装好,完全避开编译问题:

  • 下载对应Windows版本的RailsInstaller,运行安装程序时同样选择无中文、无空格的安装路径
  • 安装完成后,打开Rails Console测试是否正常

4. 更新Gem和Bundler到最新版本

旧版本的Gem工具可能存在兼容性问题,先更新再尝试安装:

gem update --system
gem install bundler
gem install rails

额外注意事项

  • 确保你的CMD运行路径和所有工具的安装路径没有中文或空格,Windows下这类路径经常导致编译失败
  • 如果还是报错,可以尝试卸载当前Ruby,重新安装x64版本的Ruby(你当前的版本是对的,但重装可能解决一些隐性的环境问题)

内容的提问来源于stack exchange,提问作者pp-man

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:33:39