我无法安装rails,并多次尝试安装ruby 3.7版本



我曾多次尝试安装rails,但我一直得到这个错误。此外,每当我将ruby更新到3.1版本并将全局安装设置为3.1时,我都会收到这条消息,说明我仍然在2.6版本。我也用MacOS和homebrew。

ebirch@Ejs-MacBook-Pro ~ % sudo gem install rails
ERROR:  While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/gems/2.6.0 directory.

根据您的简短背景,我假设您没有使用rbenv或RVM之类的工具,我建议您使用这些工具。

我建议使用这样的指南(而不是阅读上述工具文档):https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-with-rbenv-on-macos基本上,直到步骤3已经足够好了,你只要把ruby和rails的版本更改为你需要的任何版本。

注意(因为我看到了另一个提到conda的答案):conda也是一个更通用的(不是特定于ruby的)环境管理器,如果它适合你也很棒。

您可能需要重新下载ruby以获得最新版本。Ruby几个月前刚刚发布了一个新的更新,它与旧版本的rails不兼容

按照下面的步骤设置rbenv、ruby 3.1.2和rails。

步骤1

brew install rbenv

步骤2将以下行添加到.zshrc文件

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init - zsh)"

步骤3

brew update && brew upgrade ruby-build

步骤4

rbenv install 3.1.2
rbenv global 3.1.2

第5步

gem install rails

使用conda如何?

$ brew install --cask miniconda
$ conda init bash            # from then on your bash shell will be `(base) ... $`
# in `base` you are in normal global environment
# indicating that you are in base conda environment
$ conda activate --name ruby # create environment for ruby
$ conda activate ruby        # enter the 'ruby' environment
$ conda install -c conda-forge ruby=3.7  # install ruby 3.7 into this environment 'ruby'
# you can any time get out of 'ruby' environment by:
$ conda deactivate
# you can 'see' your ruby 3.7 only if you enter the 'ruby' environment by
$ conda activate ruby
# as soon as you deactivate this environment, you will see your normal global ruby, when calling ruby.

了解https://www.youtube.com/watch?v=YJC6ldI3hWk中conda的用法。

最新更新