Misplaced Pages

Compile farm

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
Server farm set up to compile computer programs remotely
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Compile farm" – news · newspapers · books · scholar · JSTOR (December 2011) (Learn how and when to remove this message)

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 operating system 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: in 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 it became non-operational some time in 2006, and was officially discontinued in February 2007.

Other examples are:

References

  1. "SourceForge.net". sitedocs.sourceforge.net. Archived from the original on September 19, 2008.
  2. Smørgrav, Dag-Erling (May 20, 2007). "The end of SourceForge as we know it". May Contain Traces of Bolts. Archived from the original on May 18, 2018. Retrieved May 18, 2018. the compile farm is no more. SourceForge discontinued it in February, without warning


Stub icon

This computer science article is a stub. You can help Misplaced Pages by expanding it.

Categories: