2011-01-26 13 views
18

Zainstalowałem pakiet z homebrew (qt). Chciałbym zmodyfikować kod źródłowy i odbudować pakiet. Nie mogę jednak znaleźć kodu źródłowego. brew --cache zwraca katalog, który nie istnieje, a kod qt nie znajduje się w/usr/local/Cellar. Czy czegoś brakuje? Czy homebrew usuwa kod źródłowy po zbudowaniu aplikacji?Modyfikowanie kodu źródłowego pakietu warzenia do domu

Odpowiedz

18

Homebrew zawiera tylko pliki binarne. Jeśli Twój katalog podręczny Homebrew (który zwykle ma numer /Library/Caches/Homebrew, ale można go znaleźć za pomocą brew --cache, jak zauważyłeś) został przeniesiony lub usunięty, musisz ponownie pobrać kod źródłowy. Możesz pobrać tylko kod źródłowy za pomocą brew fetch qt.

+4

wiem, czy to jest coś, co homebrew zmieniona pół niedawno, ale znalazłem mój pobrany pakiet w '/ Library/Caches ...' w przeciwieństwie do '~/Library/Caches ...' na wszelki wypadek, że pomoże każdemu! – taber

4

Jeśli otrzymasz tylko pakiet źródłowy, może brakować łaty zawartej w formule, a nie dokładnie źródła aktualnie używanego binarnego. Aby uzyskać drzewa źródłowego z plastra stosowanej, można zrobić:

brew unpack --patch <formula> 

Od strony man:

unpack [--git|--patch] [--destdir=path] formulae 
      Unpack the source files for formulae into subdirectories of the 
      current working directory. If --destdir=path is given, the sub- 
      directories will be created in the directory named by <path> 
      instead. 

      If --patch is passed, patches for formulae will be applied to 
      the unpacked source. 

      If --git is passed, a Git repository will be initalized in the 
      unpacked source. This is useful for creating patches for the 
      software. 
+1

Jak mogę skompilować i zainstalować pakiet z lokalnego kodu źródłowego, kiedy już go zmodyfikowałem zgodnie z moimi upodobaniami? – juanes

+0

@juanes https://stackoverflow.com/questions/31511553/homebrew-recompile-from-edited-source-code/ –