Ale*_*lex 10 ruby macos homebrew
像一个白痴,我设法删除我的系统ruby安装.
我已经重新安装了xcode,并且还安装了RVM
这样做:
$ which ruby
Run Code Online (Sandbox Code Playgroud)
返回:
/Users/alex/.rvm/bin/ruby
Run Code Online (Sandbox Code Playgroud)
然而,Homebrew似乎仍然被打破:
$ brew
-bash: /usr/local/bin/brew: /usr/bin/ruby: bad interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)
OS X上的系统ruby符号链接到Ruby.framework.由于您重新安装了Xcode,因此应该安装它,但您需要恢复符号链接.
首先,检查此文件是否存在并且有效.
$ /System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
Run Code Online (Sandbox Code Playgroud)
如果该命令有效,您应该能够再次设置sym链接
cd /usr/bin
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby /usr/bin/ruby
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/erb /usr/bin/erb
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/gem /usr/bin/gem
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/irb /usr/bin/irb
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/rake /usr/bin/rake
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/rdoc /usr/bin/rdoc
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ri /usr/bin/ri
sudo ln -s ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/testrb /usr/bin/testrb
Run Code Online (Sandbox Code Playgroud)
这应该让你开始,希望我没有忘记任何需要链接的二进制文件.还有其他建议在这里重新安装ruby:https://superuser.com/questions/171433/is-it-possible-to-reinstall-fix-mac-os-xs-system-ruby-without-doing-a-complete
要点中的另一种方法:https://gist.github.com/1418384
brew被硬编码为使用系统 ruby。您可以尝试将brew's shebang (第一行)更改为/usr/bin/env ruby,但不能保证它可以与系统 Ruby 之外的任何东西一起使用(我不确定它是否与 Ruby 1.9 完全兼容)。
或者您可以重新安装系统 Ruby,这应该可以通过重新安装 OS X 来实现。
| 归档时间: |
|
| 查看次数: |
11360 次 |
| 最近记录: |