Jak naprawić napar po aktualizacji OSX do Yosemite?


181

Wystąpił problem z Homebrew. Uaktualniłem do Yosemite. Po aktualizacji homebrew wydaje się być zepsuty.

Uruchomiłbym dowolne polecenie zaparzania i otrzymałem ten błąd

/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 26: /usr/local/Library/brew.rb: Undefined error: 0

Jak to rozwiązać?


Właśnie zaktualizowałem system Mac OS X 10.8 do 10.10 (Yosemite), a homebrew działa dobrze po aktualizacji. Albo ten problem został rozwiązany, albo było coś innego w mojej aktualizacji systemu operacyjnego w porównaniu do wszystkich innych, którzy tu zamieszczają.
Yitz

Odpowiedzi:


239

Postanowiłem to sprawdzić i odkryłem, że jest problem . Problem został zamknięty, ale nie można go uruchomić, brew updateponieważ nadal pojawia się ten sam błąd.

Oto, co musisz zrobić:

cd /usr/local/Library
git pull origin master

Jeśli masz zmiany w katalogu (/ usr / local / Library), git pull zgłosi błąd. W takim przypadku musisz pobrać gałąź master i ustawić ją siłą jako master:

git fetch --all
git reset --hard origin/master

Uaktualni to twój homebrew i będziesz mógł ponownie użyć naparu.

Jeśli zainstalowałeś Homebrew jako użytkownik inny niż root, musisz to cdzrobić /Users/yourusername/homebrew/Libraryzamiast /usr/local/Library.


20
jeszcze jeden powód, dla którego uwielbiam mieć menedżera pakietów zbudowanego na git :)
spinlock

3
Dokładnie. Uwielbiam oprogramowanie, które po prostu działa ze źródła i można je aktualizować za pomocą git pull
Ranjith Ramachandra

7
Dziwne, mam fatalne zdanie: nie repozytorium git (ani żadnego z katalogów nadrzędnych): .git
Gabriel R.

2
Otrzymuję ten błąd:error: cannot open .git/FETCH_HEAD: Permission denied
sixty4bit

6
Spróbujsudo git pull origin master
Ranjith Ramachandra

48

Znalazłem to rozwiązanie :

Ten link dobrze go opisuje, ale w przypadku gdy link się zepsuje, oto, co musisz zrobić: Wpisz te polecenia w swoim terminalu:

cd /System/Library/Frameworks/Ruby.framework/Versions
sudo ln -s Current 1.8
brew update
sudo rm 1.8

2
W przeciwieństwie do przyjętej odpowiedzi, to faktycznie zadziałało.
Paul,

To jedyna rzecz, która zadziałała dla mnie 10.10.3
użytkownik

Działa również dla 10.10.4
Ralfonso

Błąd przerwania: Błąd podczas wykonywania: git pull -q origin refs / heads / master: refs /
remote

To zadziałało dla mnie, ale był też kolejny krok: stackoverflow.com/questions/26501126/…
JussiR

22

Wersja i lokalizacja Ruby zmieniła się wraz z nową wersją Mac OS X.

Aby to naprawić w ogólny sposób, edytuj /usr/local/Library/brew.rb.

Na pierwszej linii, wymień 1.8się Current, czyli z:

#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -W0 

do:

#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby -W0

To się psuje, brew updateponieważ masz teraz niezaangażowaną zmianę.
Cameron Price-Austin

1
… Ale aby to zrobić, brew updatenależy zastosować poprawkę, którą zasugerowałem. brew updateDo tej pory nie korzystałem , więc nawet nie zainicjowałem repozytorium. Nie pamiętam, jak to zainstalowałem.
Gabriel R.

3

Jeśli naprawisz problem z rubinem, a następnie napotkasz problem polegający na tym, że system myśli, że używasz tygrysa lub starszej wersji, poprawka jest dostępna tutaj


1

Najpierw spróbowałem najlepiej ocenionej odpowiedzi, a potem trafiłem na inny problem . Potem zrezygnowałem z jego naprawy, ponieważ zainstalowałem tylko kilka pakietów. Może inni też są w tej łodzi.

Chociaż są to doskonałe odpowiedzi, dla mnie łatwiej było ponownie zainstalować napar.

Najpierw uruchomiłem instrukcje dotyczące:

http://brew.sh/

który skierował mnie do pierwszego odinstalowania i wydrukował wiersz poleceń. Uruchomiłem ten wiersz poleceń, aby odinstalować, a następnie ponownie zainstalować i wszystko było w porządku.

Nie chcę drukować określonych poleceń, ponieważ mają one tendencję do nieznacznej zmiany, gdy napar dostosowuje sposób instalacji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.