Все эти инструменты устанавливают программное обеспечение в вашу систему, но работают на разных уровнях.
./configure && make install
Запуск ./configure && make install
создает и устанавливает библиотеки или исполняемые файлы непосредственно из исходного кода.
make install
Шаг в основном только копии окончательных файлов в вашей системе. Многие источники поставляются со специальным make uninstall
правилом для их повторного удаления, но это не гарантируется и, конечно, работает только при наличии настроенных источников. Кроме того, это не заботится о необходимых зависимостях.
Часто для определенного пакета доступен только исходный код, так что это единственный путь. Кроме того, ./configure
обычно принимает множество опций, позволяющих адаптировать ваш пакет.
Отсутствие возможности выяснить, какое программное обеспечение и какой файл установлены, и отсутствие надежного способа их удаления из системы являются основными недостатками этого подхода.
RPM (менеджер пакетов Redhat)
rpm
устанавливает уже сконфигурированное и скомпилированное программное обеспечение в вашу систему, а также поставляется с деинсталляцией, чтобы избавиться от него снова. Пакеты должны быть кем-то созданы. Этот человек уже определился с тем, какие функции включить и как наилучшим образом интегрировать пакет в макет вашей системы. Это также идет со списком зависимостей.
Поскольку rpms используются во многих дистрибутивах, вам часто нужно убедиться, что этот rpm был написан для вашего дистрибутива, чтобы пути установки, зависимости и другие служебные вещи хорошо интегрировались.
В системах Debian используется эквивалентный формат пакета, .deb
а установка и база данных обрабатываются dpkg
инструментом.
Yum
yum
это дополнительная обертка вокруг rpm
. Он хранит свою собственную базу данных rpm-файлов, доступных для вашего распространения, как правило, в онлайн-хранилищах. Для стабильных версий большинства дистрибутивов все пакеты в этой базе данных будут хорошо взаимодействовать друг с другом. В этой базе данных можно искать (например, с помощью yum search some_name
).
Это также автоматически разрешит зависимости для вас. Пакеты (и с некоторой дополнительной помощью их зависимости) также могут быть легко удалены.
В системах Debian Apt ( apt-get
и aptitude
) предоставляет эквивалентные инструменты для репозитория и разрешения зависимостей .
Итак, подведем итог: если вы просто хотите какое-то программное обеспечение, попробуйте yum
сначала. Если его там нет, вы можете попытаться найти существующий rpm
пакет. Если его нет или у вас есть какие-то особые требования, соберите из исходного кода.
yum
противup2date
. Я никогда не понимал разницу.