Skompiluj farmę - Compile farm
Gospodarstwo kompilacji jest farma serwerów , zbiór jednego lub więcej serwerów , który został powołany w celu opracowania programów komputerowych zdalnie z różnych powodów. Zastosowania farmy kompilacyjnej obejmują:
- Programowanie międzyplatformowe : podczas pisania oprogramowania działającego na wielu architekturach procesorówi systemach operacyjnych , każdy programista może mieć własną maszynę dla każdej architektury — na przykład jedna platforma może mieć drogi lub mało znany typ procesora . W tym scenariuszu farma kompilacji jest przydatna jako narzędzie dla deweloperów do tworzenia i testowania oprogramowania na udostępnionym serwerze z docelowym systemem operacyjnym i procesorem. Farmy kompilacji mogą być preferowane od kompilacji krzyżowej, ponieważ konfigurowanie kompilatorów krzyżowych jest często skomplikowane, aw niektórych przypadkach kompilacja jest możliwa tylko w miejscu docelowym, co uniemożliwia kompilację krzyżową.
- Wieloplatformowe testowanie ciągłej integracji : w tym scenariuszu każdy serwer ma inną architekturę procesora lub działa z innym systemem operacyjnym; skrypty automatycznie budują najnowszą wersję drzewa źródłowego z repozytorium kontroli wersji . Jedną z trudności w rozwoju międzyplatformowym jest to, że programista może niechcący wprowadzić błąd, który powoduje, że oprogramowanie przestaje działać na innej platformie CPU/OS niż ta, z której korzysta. Korzystając z wieloplatformowej farmy kompilacji, takie błędy można zidentyfikować i naprawić.
- Kompilacja rozproszona : budowanie pakietów oprogramowania zazwyczaj wymaga operacji, które można wykonywać równolegle (na przykład kompilowanie pojedynczych plików kodu źródłowego). Korzystając z farmy kompilacji, operacje te można wykonywać równolegle na osobnych komputerach. Przykładem programu, którego można do tego użyć, jest distcc .
Jednym z przykładów farmy kompilacji była usługa świadczona przez SourceForge do 2006 roku. Farma kompilacji SourceForge składała się z dwunastu maszyn o różnej architekturze komputerowej z różnymi systemami operacyjnymi i miała umożliwić programistom testowanie i używanie ich programów na różnych platform przed udostępnieniem ich opinii publicznej. Po tym, jak skok mocy zniszczył kilka maszyn, przestał działać jakiś czas w 2006 roku i został oficjalnie przerwany w lutym 2007 roku.
Inne przykłady to:
- Farma kompilacji GCC https://gcc.gnu.org/wiki/CompileFarm
- Usługa kompilacji OpenSUSE
- Usługa raportów FreeBSD , która pozwala opiekunom pakietów testować ich własne zmiany na różnych wersjach i architekturach.
- Launchpad Build Farm https://launchpad.net/builders
- Mozilla ma farmę kompilacji, ale nie jest ona publiczna https://wiki.mozilla.org/ReleaseEngineering
- Debian ma farmę kompilacji https://buildd.debian.org/
- Farma kompilacji OpenCSW dla Solaris x86 i Sparc