Получая выгоду от строительства из источника? Код лучше оптимизирован под вашу аппаратную архитектуру? Оптимизировано ли оно вообще?
Почему кто-то выбрал бы сборку из исходного кода вместо использования системы управления пакетами, такой как APT / yum? Если есть какой-то выигрыш от оптимизации, когда это перевешивает выгоду от системы управления пакетами?
Ответы:
Сборка из исходного кода предоставляет следующие параметры, которые недоступны при использовании версии из менеджера двоичных пакетов.
Компиляция из исходного кода позволяет:
источник
Я сделал это точно совсем недавно.
Я скомпилировал openssl-1.0.something из исходного кода в Linux-системе Slackware 11.0. Я хотел залатать логин по паролю, чтобы сделать паузу на 7 секунд при неудачном входе в систему, чтобы заполучить раздражающих китайских угадателей паролей ssh.
Я скомпилировал Apache httpd 2.2.17 в той же системе Slackware 11.0, потому что он поставлялся с Apache 2.0.something, и я хотел использовать 2.2.x httpd.conf из другой системы.
Если подумать, я также скомпилировал Alpine 2.0 (почтовый клиент, продолжение пользователя) для той же системы. Почему Slackware 11.0? Он работает на компьютере 2003 года с графикой Intel "Brookdale", и любой более поздний Slackware просто не поддерживает плохо документированную графику Intel.
На другом компьютере я получил поддержку беспроводной микросхемы TI ACX111 от github и скомпилировал новый драйвер, что позволило мне использовать беспроводную карту за 9 долларов.
Я также обычно перекомпилирую ядра Linux, чтобы сделать их специфичными для машины, на которой они работают.
Так что в моем случае это разные причины настройки, аппаратная поддержка и «просто потому что».
Учитывая то, что мы знаем об эпидемиологии в однородной популяции (http://www.usenix.org/publications/login/2005-12/openpdfs/geer.pdf), почему не все компилируют из исходного кода в своих собственных системах, какими бы ни были опции компиляции они выбирают? Это сделало бы для значительно большей устойчивости к вирусам и червям.
источник