Jac*_*ack 4 ruby rubygems ruby-on-rails apple-m1
您好,我是 Ruby on Rails 新手。当我运行 时rails db:create,在 M1 MBP 上运行时出现以下错误:
/Library/Ruby/Gems/2.6.0/gems/msgpack-1.4.2/lib/msgpack.rb:8:in `require':
dlopen(/Library/Ruby/Gems/2.6.0/gems/msgpack-1.4.2/lib/msgpack/msgpack.bundle, 0x0009):
missing compatible arch in /Library/Ruby/Gems/2.6.0/gems/msgpack-1.4.2/lib/msgpack/msgpack.bundle
- /Library/Ruby/Gems/2.6.0/gems/msgpack-1.4.2/lib/msgpack/msgpack.bundle (LoadError)
Run Code Online (Sandbox Code Playgroud)
我的红宝石版本是ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.arm64e-darwin20]
任何帮助表示赞赏!
我在使用 M1 设备预装的 ruby-2.6.3 时也遇到了这个问题。
我的解决方案是将 ruby 版本更改为其他版本,因为这可能是苹果预安装版本的 ruby 的问题。例如,我使用 rbenv (管理 ruby 版本的推荐方法)将我的版本更改为 2.7.3:
rbenv install 2.7.3
Run Code Online (Sandbox Code Playgroud)
使用以下命令全局更改 ruby 版本:
rbenv global 2.7.3
Run Code Online (Sandbox Code Playgroud)
您可能还需要重新启动终端或执行其他操作以确保使用新的 ruby 版本。