Byr*_*yrd 6 ruby windows ruby-on-rails
每当我去rails s或rake db:migrate时尝试在我的Windows 7机器上运行ruby我得到以下错误无法加载这样的文件bcrypt_ext.
我的ruby版本是2.2.1我的rails版本是4.2.0而bcrypt版本是3.1.10.当我运行bundle install时,所有的gem都正确安装,但是每当我尝试rake它时都会给我这个错误.任何帮助将不胜感激
Ric*_*eck 16
你需要使用它在这里说的内容:https://www.alib.jp/entries/bcrypt_ext_load_error_on_ruby21x
C:\> gem install --no-ri --no-rdoc bcrypt
C:\> cd (path to gems root)\bcrypt-3.1.7-x86-mingw32\ext\mri
C:\(path to gems root)\bcrypt-3.1.7-x86-mingw32\ext\mri> ruby extconf.rb
C:\(path to gems root)\bcrypt-3.1.7-x86-mingw32\ext\mri> make
C:\(path to gems root)\bcrypt-3.1.7-x86-mingw32\ext\mri> make install
Run Code Online (Sandbox Code Playgroud)
我在 Window 8.1 64bit 、Ruby 2.3.3 64bit 、Rails 4.2.10 中遇到了同样的问题。
我的快速解决方案:
第 1 步:删除 gem 中的所有 bcrypt:(gem uninstall bcrypt如果存在,请选择选项 3(删除所有))
第 2 步:再次安装 bcrypt: gem install bcrypt
然后检查 bcrypt 的版本: gem list bcrypt
第 3 步:在您项目的 Gemfile 中,添加: gem 'bcrypt', '3.1.11', platforms: [:ruby, :x64_mingw]
注意:更改 bcrypt 的合适版本(我的版本:3.1.11)
第 4 步:在项目路径中运行命令: bundle install
第 5 步:删除不需要的 bcrypt :运行命令:gem uninstall bcrypt
您可以看到 bcrypt 的某个版本,您应该保留一个版本: bcrypt-[your-version] 。(删除所有版本:bcrypt-[your-version]-x64-mingw32。在我的情况下,删除:bcrypt-3.1.11-x64-mingw32)
重启 Rails 服务器,完成
我认为这个问题是因为当我们安装 bcrypt 时,我们没有指定 64bit 或 32bit ,它与 window 或 ruby ( 64bit 或 32bit )不兼容
| 归档时间: |
|
| 查看次数: |
12858 次 |
| 最近记录: |