Linux noob вопрос - Как мне обновить программу, созданную из исходного кода?
Когда я собираю программу из исходного кода (CentOS), как мне обновить ее до новой версии? Могу ли я просто запустить make && make install снова с теми же параметрами настройки?
3 ответа
Когда вы получите новый источник, проверьте файлы README или INSTALL. Часто будет раздел об обновлении. Если это не так, выполнение make && make install должно работать.
Вот где GNU Stow может быть полезен. Я годами использую этот инструмент для поддержания чистоты своей ОС. Это менеджер пакетов для программ, установленных из исходного кода. Вот как это работает. Во-первых, у меня есть один каталог, где я храню все такие программы, /usr/local/stow
, Внутри нее есть каталоги для каждой программы. Когда я компилирую программы из исходного кода, я использую опцию --prefix=/usr/local/stow/program-name
, когда make install
сделано, исполняемые файлы установлены в /usr/local/stow/program-name/bin
библиотеки находятся в /usr/local/stow/program-name/lib
и т. д. Затем я бегу cd /usr/local/stow
а также sudo stow program-name
, Последняя команда создает ссылки из /usr/local/stow/program-name/bin
в /usr/local/bin/
от lib до /usr/local/lib
и т. д. Итак, все файлы, принадлежащие одной программе, находятся в одном каталоге.
Когда я хочу удалить или обновить программу, я запускаю sudo stow -D program-name
удалить ссылки и удалить каталог. Теперь система чистая, и я могу установить новую версию.
99% времени, просто скачайте исходный код новой версии (или патч), соберите и установите.