【问题标题】:'Expected in: flat namespace' Rails error while db:reset in Apple M1 processor macOs BigSur 11.4“预期在:平面命名空间”Rails 错误,而 db:在 Apple M1 处理器 macOS BigSur 11.4 中重置
【发布时间】:2021-09-20 14:12:12
【问题描述】:

我最近获得了一个 macOS BigSur,不幸的是,我在尝试安装 Rails 应用程序时遇到了很多问题。经过几天的论坛回答问题,我遇到了一个我无法解决的问题,互联网上没有太多关于如何解决的问题。

每当我运行以下命令 rails db:reset 时,我都会得到以下输出:

dyld: lazy symbol binding failed: Symbol not found: _grpc_set_ssl_roots_override_callback
  Referenced from: /Users/usr/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/grpc-1.38.0/src/ruby/lib/grpc/grpc_c.bundle
  Expected in: flat namespace

dyld: Symbol not found: _grpc_set_ssl_roots_override_callback
  Referenced from: /Users/usr/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/grpc-1.38.0/src/ruby/lib/grpc/grpc_c.bundle
  Expected in: flat namespace

zsh: abort      rails db:reset

我查看了这个 Github 问题 https://github.com/grpc/grpc/issues/24846 并按照 nilleb 用户标记的步骤解决了我的第一个问题,但后来我收到了这个错误消息,它也在同一个线程中提到,但我找不到解决方法解决它。

当我运行gem list 时,我得到了

  • grpc (1.38.0 ruby​​ Universal-darwin)
  • google-protobuf (3.17.3 ruby​​ universal-darwin)

我的 ruby​​ 版本是

  • ruby 2.6.6p146(2020-03-31 修订版 67876)[-darwin20]

我阅读了用户 premist 发布的帖子,但不知道该怎么做。

在这种情况下您能帮帮我吗?非常感谢您的帮助!

【问题讨论】:

    标签: ruby-on-rails ruby macos rubygems macos-big-sur


    【解决方案1】:

    我已经解决了这个问题。这个问题是由我的自制路径引起的,我需要将其文件夹安装在 /usr/local/homebrew 而不是 /usr/opt/homebrew 因为 /opt/homebrew 是供 ARM 使用的(所以我必须使用英特尔安装)。 我卸载了 brew 及其所有工具,例如 rbenv、nvm 等。然后,我再次安装了 brew,但使用了 arch 标志 x86_64 命令:arch -x86_64 /bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)\"。之后,我安装了 rbenv、nvm 和其他工具,总是使用 arch 标志:arch -x86_64

    【讨论】:

      猜你喜欢
      • 2015-02-02
      • 2021-08-13
      • 2013-01-25
      • 1970-01-01
      • 1970-01-01
      • 2011-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多