原由:準備使用redis做爲celery的broker,使用homebrew安裝,錯誤輸出以下:
/usr/local/bin/brew: /usr/local/Library/brew.rb: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: bad interpreter: No such file or directory
/usr/local/bin/brew: line 23: /usr/local/Library/brew.rb: Undefined error: 0
使用下文中的方法能讓brew命令可用,但仍是沒法安裝redis。
http://stackoverflow.com/questions/24225959/how-to-get-ruby-homebrew-rvm-to-work-on-yosemite/25119913#25119913
搜索得知homebrew團隊已經解決此問題,升級安裝即能修復。
卻採用了從新安裝的方式來升級homebrew,致使所安裝的軟件都被刪除。
只能從新安裝python,mysql等等。帶來的另外一後果是用virtualenv建立的虛擬環境也不能用了。
只好從新建立虛擬環境,安裝相關python庫。卻發現沒法安裝M2Crypto。
用下文的方法修復了壞掉的虛擬環境:http://wirtel.be/posts/en/2014/07/29/fix_virtualenv_python_brew/
原來virtualenv命令建立虛擬環境時使用大量的軟件連接,升級python後就會致使軟連接失效。
須要刪除失效的軟連接,並重復建立新的軟連接。可在建立虛擬環境時使用--always-copy參數,這樣就會copy文件而不是使用軟連接。
正確的升級homebrew的方法:http://vancelucas.com/blog/fixing-homebrew-on-osx-yosemite-10-10/python