Compile farm

Compile farm

A compile farm is a server farm, a collection of one or more servers, which has been set up to compile computer programs remotely for various reasons. Uses of a compile farm include:

  • Cross-platform development: When writing software that runs on multiple processor architectures and operating systems, it can be infeasible for each developer to have their own machine for each architecture — for example, one platform might have an expensive or obscure type of CPU. In this scenario, a compile farm is useful as a tool for developers to build and test their software on a shared server running the target OS and CPU. Compile farms may be preferable to cross-compilation as cross compilers are often complicated to configure, and in some cases compilation is only possible on the target, making cross-compilation impossible.
  • Cross-platform continuous integration testing: under this scenario, each server has a different processor architecture or runs a different operating system; scripts automatically build the latest version of a source tree from a version control repository. One of the difficulties of cross-platform development is that a programmer may unintentionally introduce an error that causes the software to stop functioning on a different CPU/OS platform from the one they are using. By using a cross-platform compile farm, such errors can be identified and fixed.
  • Distributed compilation: Building software packages typically requires operations that can be run in parallel (for example, compiling individual source code files). By using a compile farm, these operations can be run in parallel on separate machines. An example of a program which can be used to do this is distcc.

One example of a compile farm was the service provided by SourceForge until 2006. The SourceForge compile farm was composed of twelve machines of various computer architectures running a variety of operating systems, and was intended to allow developers to test and use their programs on a variety of platforms before releasing them to the public. After a power spike destroyed several of the machines[1][dead link] it became non-operational some time in 2006, and was officially discontinued [2] on February 8, 2007.

Another example is the OpenSUSE Build Service.


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • Compiler — This article is about the computing term. For the anime, see Compiler (anime). A diagram of the operation of a typical multi language, multi target compiler A compiler is a computer program (or set of programs) that transforms source code written …   Wikipedia

  • distcc — Original author(s) Martin Pool Developer(s) Fergus Henderson Stable release 3.1 / 21 November 2008 Written in C/C++/Python …   Wikipedia

  • Computer cluster — Not to be confused with data cluster. A computer cluster is a group of linked computers, working together closely thus in many respects forming a single computer. The components of a cluster are commonly, but not always, connected to each other… …   Wikipedia

  • Shell-Account — Ein Shell Account ist ein Benutzerkonto auf einem entfernten Rechner, über das der Benutzer auf Grundlage einer Shell Zugriff auf diesen erhält. Inhaltsverzeichnis 1 Verwendung des Begriffs 2 Betriebssysteme mit Shell Unterstützung 3 Eingesetzte… …   Deutsch Wikipedia

  • Shell Account — Ein Shell Account ist ein Benutzerkonto auf einem entfernten Rechner, über das der Benutzer auf Grundlage einer Shell Zugriff auf diesen erhält. Inhaltsverzeichnis 1 Verwendung des Begriffs 2 Betriebssysteme mit Shell Unterstützung 3 Eingesetzte… …   Deutsch Wikipedia

  • Shell account — Ein Shell Account ist ein Benutzerkonto auf einem entfernten Rechner, über das der Benutzer auf Grundlage einer Shell Zugriff auf diesen erhält. Inhaltsverzeichnis 1 Verwendung des Begriffs 2 Betriebssysteme mit Shell Unterstützung 3 Eingesetzte… …   Deutsch Wikipedia

  • Noisebridge — For the device used to measure the efficiency of antennas systems, see antenna analyzer. Noisebridge Organization Motto Be Excellent To Each Other v · d · …   Wikipedia

  • Cross compiler — A cross compiler is a compiler capable of creating executable code for a platform other than the one on which the compiler is run. Cross compiler tools are used to generate executables for embedded system or multiple platforms. It is used to… …   Wikipedia

  • Alabama Cooperative Extension System — Infobox Government agency agency name = Alabama Cooperative Extension System logo width = 200px logo caption = Official Alabama Cooperative Extension System logo (2008) seal width = seal caption = formed = 1914 jurisdiction = Alabama headquarters …   Wikipedia

  • literature — /lit euhr euh cheuhr, choor , li treuh /, n. 1. writings in which expression and form, in connection with ideas of permanent and universal interest, are characteristic or essential features, as poetry, novels, history, biography, and essays. 2.… …   Universalium

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”