我正在尝试在运行OS X 10.6.3,Ruby 1.8.7和Rails 2.3.5的全新MacBook Pro上安装Rails 3,我想知道我是否已经自己洗了.到目前为止,我已经运行了这些命令:
$ gem update --system
$ gem install arel tzinfo builder memcache-client rack rack-test rack-mount erubis mail text-format thor bundler i18n
$ gem install rails --pre
Run Code Online (Sandbox Code Playgroud)
但是,当我运行最后一个命令时,我收到此错误:
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /usr/bin directory.
Run Code Online (Sandbox Code Playgroud)
我认为它希望我运行命令,sudo
以便它可以写入/usr/bin/rails
.但如果我这样做,我不会覆盖我的Rails 2.3.5可执行文件吗?我不想那样做.相反,我想保留两个版本的Rails.我怎么做?
小智 377
使用-n
参数来安装cocoapods:
sudo gem install cocoapods -n /usr/local/bin
Run Code Online (Sandbox Code Playgroud)
Fra*_*eau 32
使用-n/usr/local/bin标志确实有效,但每次我想再次更新包时我都必须回到这个页面.所以我想出了一个永久的解决方案.
对于有兴趣永久修复此问题的人:
创建一个〜/ .gemrc文件
vim .gemrc
Run Code Online (Sandbox Code Playgroud)
添加以下内容:
:gemdir:
- ~/.gem/ruby
install: -n /usr/local/bin
Run Code Online (Sandbox Code Playgroud)
现在,您可以在没有-n标志的情况下正常运行命令.
请享用!
小智 31
sudo gem install cocoapods --pre -n /usr/local/bin
Run Code Online (Sandbox Code Playgroud)
这适合我.
Tar*_*lel 14
我建议使用RVM,它允许你使用gem配置文件安装多个版本的Ruby/Rails,并且基本上保持所有宝石彼此包含.您可能想查看类似的帖子如何在OSX上安装Ruby on Rails 3
在 macOS High Sierra 上,这解决了我的问题:
sudo gem update --system -n /usr/local/bin/gem
Run Code Online (Sandbox Code Playgroud)
要修复您的特定错误,您需要以sudo身份运行该命令,即:
sudo gem install rails --pre
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
89038 次 |
最近记录: |