Windows10运行Ruby on Rails报找不到pg x64-mingw32 gem如何解决
Windows 10 运行 Ruby on Rails 报
Could not find gem 'pg x64-mingw32' in locally installed gems 解决方法 这个报错是因为x64-mingw32平台的pg(PostgreSQL Ruby驱动)gem未正确安装,通常是缺少编译依赖、Ruby平台版本不匹配导致,按以下步骤处理即可:
- 先确认Ruby版本匹配
终端执行ruby -v查看本地Ruby版本,确认输出包含x64-mingw32字段。如果是32位(i386-mingw32)版本,重装64位带Devkit的RubyInstaller即可。 - 方案1:无需安装完整PostgreSQL,通过MSYS2装依赖
打开RubyInstaller自带的MSYS2 MINGW64终端,执行命令安装pg gem所需的开发库:
装完回到项目目录的PowerShell/CMD终端,直接执行pacman -S mingw-w64-x86_64-postgresqlbundle install就会自动安装匹配当前平台的pg gem。 - 方案2:本地已装PostgreSQL时手动指定编译路径
如果本地已经装了Windows版PostgreSQL,先确认安装时勾选了Development Files组件,再在项目目录执行命令配置bundle的编译参数,把路径替换成你本地PostgreSQL的实际安装路径:
配置完成后执行bundle config set --local build.pg --with-pg-dir="C:\Program Files\PostgreSQL\16"bundle install即可完成安装。 - 避坑说明
不要强制安装忽略平台的通用版pg gem,会导致后续数据库连接出现兼容问题;如果之前安装失败过,先执行gem uninstall pg删掉所有残留的损坏版本,再重新走上面的安装流程。
内容的提问来源于stack exchange,提问作者Sanad Abughoush
相关产品推荐
相关产品推荐

