Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
GNU Autotools
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Usage == [[File:Autoconf-automake-process.svg|thumb|450px|right|Flow diagram of Autotools tools.]] Autotools assists with sharing [[cross-platform]] software with a relatively broad user community. It facilitates sharing the source code by providing relatively robust cross-platform build support so that consumers can build the software themselves. Generally, the source code is distributed with a [[configure script|script]], named ''configure'', that has no dependencies other than a [[Bourne shell|Bourne-compatible]] [[Unix shells|shell]]. Autotools need not be available. The consumer runs <code>configure</code> which generates various files including a ''Makefile'' which the consumer uses by running <code>make</code>.<ref>{{cite web|url=https://www.gnu.org/software/automake/manual/html_node/GNU-Build-System.html |title=automake: GNU Build System |website=Gnu.org |date=2014-12-31 |access-date=2016-04-01}}</ref><ref>{{cite web|url=http://airs.com/ian/configure/configure_1.html#SEC5 |title=The GNU configure and build system - Introduction |website=Airs.com |date=1998-07-01 |access-date=2016-04-01}}</ref> Autotools can be used both for building native programs on the build machine and also for [[cross-compiling]] to other architectures.<ref>{{cite web|url=http://sources.redhat.com/autobook/autobook/autobook_258.html |title=Cross Compilation with GNU Autotools |access-date=September 24, 2008 |url-status=dead |archive-url=https://web.archive.org/web/20081013213002/http://sources.redhat.com/autobook/autobook/autobook_258.html |archive-date=October 13, 2008 }}</ref> Cross-compiling software to run on a Windows host from a Linux or other Unix-like build system is also possible, using MinGW, however native compilation is often desirable on operating systems (such as the [[Microsoft Windows]] family of systems) that cannot run Bourne shell scripts on their own. This makes building such software on the Windows operating system a bit harder than on a [[Unix-like]] system which provides the Bourne shell as a standard component. One can install the [[Cygwin]] or [[MSYS]] system on top of Windows to provide a [[Unix-like]] [[compatibility layer]], though, allowing [[configure (computing)|configure]] scripts to run. Cygwin also provides the [[GNU Compiler Collection]], [[GNU make]], and other software that provides a nearly complete Unix-like system within Windows; MSYS also provides GNU make and other tools designed to work with the [[MinGW]] version of GCC. A consumer can re-generate the configure script which might be necessary if they amend the source code. In this case, they need to have Autotools installed. The autoconf-generated configure script can be slow because it executes programs such as a C compiler multiple times to test whether various libraries, header files, and language features are present. This particularly affects [[Cygwin]], which, due to its lack of a native [[Fork (operating system)|fork system call]], may execute configure scripts considerably slower than on [[Linux]].<ref>{{cite web|url=http://cygwin.com/ml/cygwin/2005-04/msg00703.html |title=Robert Γgren - Slow shell script execution on Cygwin |website=Cygwin.com |access-date=2016-04-01}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)