Jump to content

distcc

distcc
Оригинальный автор(ы) Мартин Пул
Разработчик(и) Фергюс Хендерсон
Стабильная версия
3.4 [1]  Отредактируйте это в Викиданных / 11 мая 2021 г .; 3 года назад ( 11 мая 2021 )
Репозиторий
Написано в С , С++ , Питон
Операционная система Кросс-платформенный
Тип Компилятор
Лицензия Стандартная общественная лицензия GNU
Веб-сайт distcc .github .что
Distcc

В разработке программного обеспечения distcc это инструмент для ускорения компиляции исходного кода с помощью распределенных вычислений по компьютерной сети . При правильной настройке distcc может значительно сократить время компиляции проекта. [2]

Он предназначен для работы с языком программирования C (и его производными, такими как C++ и Objective-C ) и для использования GCC в качестве серверной части, хотя он обеспечивает различную степень совместимости с компилятором Intel C++ и Sun Microsystems от Sun Studio Compiler Suite . [3] распространяется на условиях GNU General Public License Distcc и является свободным программным обеспечением .

distcc предназначен для ускорения компиляции за счет использования неиспользуемой вычислительной мощности на других компьютерах. Машина с установленным distcc может отправлять код для компиляции по сети на компьютер, на котором установлен демон distccd и совместимый компилятор. [4]

distcc работает как агент компилятора. Демон distcc должен быть запущен на каждой из участвующих машин. Исходная машина вызывает препроцессор для обработки файлов заголовков, директив предварительной обработки (например, #ifdef) и исходные файлы и отправляет предварительно обработанный исходный код на другие машины по сети через TCP либо в незашифрованном виде, либо с использованием SSH . Удаленные машины компилируют эти исходные файлы без каких-либо локальных зависимостей (таких как библиотеки, файлы заголовков или определения макросов) в объектные файлы и отправляют их обратно создателю для дальнейшей компиляции. [5]

distcc версии 3 поддерживает режим (называемый режимом насоса ), в котором включенные файлы заголовков отправляются на удаленные машины.так что предварительная обработка также распределена.

[ редактировать ]

distcc был опцией для распределенных сборок в версиях пакета разработки Apple Xcode до 4.3, но был удален.

Goma — аналогичный инструмент, созданный Google для замены distcc и ccache при компиляции Chromium.

ccache — еще один инструмент, призванный сократить время компиляции за счет кэширования вывода из тех же входных исходных файлов. ccache также может использовать distcc в качестве своей серверной части, обеспечивая распределенную компиляцию, если она еще не кэширована с помощью переменной среды CCACHE_PREFIX.

Мороженое

[ редактировать ]

мороженое было создано SUSE на основе distcc. Как и distcc, Icecream берет задания компиляции из сборки и распределяет их между удаленными компьютерами, обеспечивая параллельную сборку. Но в отличие от distcc, Icecream использует центральный сервер, который динамически распределяет задания компиляции на самый быстрый свободный сервер. [6]

См. также

[ редактировать ]
  1. ^ «Выпуск 3.4» . 11 мая 2021 г. Проверено 21 мая 2021 г.
  2. ^ Лоуренс Бонни (22 июля 2004 г.). «Уменьшите время компиляции с помощью distcc» . ИБМ . Проверено 24 августа 2011 г.
  3. ^ Мартин Пул (23 февраля 2007 г.). «distcc часто задаваемые вопросы» . Distcc.googlecode.com. Архивировано из оригинала 7 сентября 2009 г. Проверено 19 октября 2009 г.
  4. ^ Дэниел Роббинс (1 февраля 2004 г.). «Распределенные вычисления и распределенные вычисления» . Доктор Добб . Проверено 24 августа 2011 г.
  5. ^ В.Л. Симпсон (октябрь 2004 г.). «Быстрая компиляция с помощью Distcc» . linuxgazette.net . Проверено 25 августа 2011 г.
  6. ^ Icecream: Распределенный компилятор с центральным планировщиком для разделения загрузки сборки , Icecc, 27 декабря 2017 г. , получено 27 декабря 2017 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c7f79c9ea019d9ca0150c75599d2daee__1720367460
URL1:https://arc.ask3.ru/arc/aa/c7/ee/c7f79c9ea019d9ca0150c75599d2daee.html
Заголовок, (Title) документа по адресу, URL1:
distcc - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)