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
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
.
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.
Jak mogę skompilować i zainstalować pakiet z lokalnego kodu źródłowego, kiedy już go zmodyfikowałem zgodnie z moimi upodobaniami? – juanes
@juanes https://stackoverflow.com/questions/31511553/homebrew-recompile-from-edited-source-code/ –
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