Я установил пакет с homebrew (qt). Я хотел бы изменить исходный код и перестроить пакет. Однако я не могу найти исходный код. brew --cache
возвращает каталог, который не существует, а код для qt отсутствует в /usr/local/Cellar. Я что-то упускаю? Может ли homebrew удалять исходный код после создания приложения?
Изменение исходного кода домашнего пакета brew
Ответ 1
Homebrew сохраняет только двоичные файлы. Если ваш каталог домашнего кэша (который обычно находится в /Library/Caches/Homebrew
, но может быть найден с помощью brew --cache
, как вы отметили), был перемещен или удален, вам придется снова получить исходный код. Вы можете получить только исходный код с помощью brew fetch qt
.
Ответ 2
Если вы получаете только исходный пакет, может отсутствовать патч, включенный в формулу, а не точно источник бинарного файла, который вы сейчас используете. Чтобы получить исходное дерево с применяемым патчем, вы можете:
brew unpack --patch <formula>
На странице 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.