我无法更改我想用我的 Mac (M1) 运行的 ruby 版本
Posted
技术标签:
【中文标题】我无法更改我想用我的 Mac (M1) 运行的 ruby 版本【英文标题】:I can't change the ruby version I want to run with my Mac (M1) 【发布时间】:2021-08-19 05:57:59 【问题描述】:所以我尝试完成本教程https://programminghistorian.org/en/lessons/building-static-sites-with-jekyll-github-pages#on-a-mac-,但卡在了 ruby 部分。以下是发生的事情和我尝试过的事情:
在尝试本教程时,我在尝试使用此命令行时遇到了第一个“权限”错误
gem install rubygems-update
所以我继续访问 Jekyll 网站,阅读文档并发现我需要解决该权限错误,我的猜测是它是在 Mac 已经有需要运行的 ruby 版本时生成的,而且即使我安装了新的 ruby 版本,我也无法更改我的 Mac 正在运行的版本。
我在documentation 上尝试了所有方法。甚至是安装 ruby 的 rbenv 路径,然后在尝试查看我使用 ruby -v
运行的版本时,我得到了同样的东西“2.6.3p62”。
然后我找到了this 博客文章,并再次尝试使用自制软件以这种方式安装它。我从那里修改的唯一内容是:
echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> ~/.bash_profile
到这里
回显'export PATH="/usr/local/opt/ruby/bin:/usr/local/lib/ruby/gems/3.0.1/bin:$PATH"' >> ~/.zshrc
因为在运行echo $SHELL
之后,我的shell 似乎是zsh。
但是,当我重新启动控制台并输入 ruby -v
时,终端显示相同的旧版本“2.6.3p62”。我还看到here 可以在安装后运行which ruby
并运行echo 命令以查看它是否需要从新定义的路径但没有。它还在 /usr/bin/ruby 里面
我已经用完了所有选项并寻求帮助。谢谢。
【问题讨论】:
澄清:这是rbenv
?使用 Homebrew ruby
是一种选择,但 rbenv
通常会做得更好,尤其是当您必须在同一台机器上处理多个版本的 Ruby 时。
是的,使用 rbenv,我最终找到了一个可以帮助我使用 chruby 完成它的脚本。
【参考方案1】:
M1 芯片 MacOS 终端设置 Ruby(任何所需版本)环境的可能脚本是:
xcode-select --install
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install git
git config --global color.ui true
git config --global user.name "your name here"
git config --global user.email your_email_here
然后在 Chrome 中下载 VS Code 并返回终端输入以下命令。
brew install rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
source ~/.zshrc
接下来是您插入所需版本的位置。这次我建议2.7.3
rbenv install 2.7.3
rbenv global 2.7.3
rbenv rehash
gem install bundler pry byebug
gem install pry
gem install pry-doc
【讨论】:
以上是关于我无法更改我想用我的 Mac (M1) 运行的 ruby 版本的主要内容,如果未能解决你的问题,请参考以下文章
Cocoapods 无法在新的 m1 mac Big Sur Xcode 上运行
我想用我的 android 手机作为模拟器在 windows 7 上运行颤振。在我的调试模式下进行了调整。如何解决颤振医生命令的问题
在 M1 Mac 上运行 Flutter Doctor 时出错 - 无法找到捆绑的 Java 版本
Flutter 运行和 ipa - Mac M1 - #import <Flutter/Flutter.h>
我无法在 R 中的 M1 Mac 上使用 keras 中的功能,它要求我安装 arm64e 版本的 miniconda3。该怎么办?