OverView
- Wikipedia: GNU Build System OverView
- GNU build system tutorial with Example
- Basic example with GNU build system – demonstrates some component
- GNU AutoTools Book
- A brief introduction to the GNU autotools
- Using GNU AutoTools
- AutoTools Tutorial
- GNU make in detail for beginners
- An Introduction to GCC for the GNU Compilers gcc and g++
- GNU Configure and Build system
- GNU Build Files Explanation
- Building a GNU AutoTools Project
- Understanding the GNU Build System
- Learning the GNU build system – has section on installation
PreRequisites
- GNU gcc compiler
- GNU make
- GNU m4 macro processor version 1.4.5 or later
- GNU tar programs
- Also, you need to ensure that autoconf, automake, and libtool programs are available on your system.
GNU Build system components
- AutoScan – Search the source files for common portability problems, check for incompleteness of `configure.ac', and create a file `configure.scan' which is a preliminary `configure.ac' for that package.
- configure.ac – configure.ac (sometimes also named: configure.in) is an input file for autoconf. It contains tests that check for conditions that are likely to differ on different platforms.
- makefile.am – Makefile.am — a user input file to automake
- aclocal – It contains diagrams explaining how the different files of an autotools project interact with each other and by which tool they are used: configure, config.h, config.status, aclocal.m4 etc
- autoheader – Using autoheader to Create config.h.in
- automake – Automake is a tool for automatically generating `Makefile.in' files compliant with the GNU Coding Standards. Automake requires the use of Autoconf – automake manual
- aclocal.m4 – Automake includes a number of Autoconf macros that can be used in your package (see Macros); some of them are actually required by Automake in certain situations. These macros must be defined in your aclocal.m4; otherwise they will not be seen by autoconf.
- config.h.in – The include file template that holds the C macros to be defined by configure is usually called config.h.in and may be maintained either manually or automatically.
- makefile.in –
- autoconf – autoconf is part of the autoconf package. autoconf determines what the system is capable of. That is, which function exist and the like. Additionally, it finds the location of programms needed to build a program. It is part of autotools. autoconf produces the configure script. GNU autoconf manual
- configure
- configure.in – a user input file to autoconf
- config.status – The first step in building a package is to run the `configure' script. The `configure' script will create the file `config.status', which is itself a shell script. When you first run `configure', it will automatically run `config.status'. An `Makefile' derived from an automake generated `Makefile.in' will contain rules to automatically run `config.status' again when necessary to recreate certain files if their inputs change.
- config.h – This file defines C preprocessor macros which C code can use to adjust its behaviour on different systems. The `config.status' script will transform `config.in' into `config.h'This file defines C preprocessor macros which C code can use to adjust its behaviour on different systems. The `config.status' script will transform `config.in' into `config.h'
- makefile
- make – – make manual
Build Examples
- A hello world example that includes how to install AutoTools – I did this example. I had to install libtool after having installed gcc & build-essentials
- helloworld compiled in windows using MinGW
- Gnu Automake by example – See the links at the bottom of the page. Includes AutoMake Manual : listed below numbered points
- Gary V. Vaughan, Ben Elliston, Tom Tromey and Ian Lance Taylor. GNU Automake, Autoconf, and Libtool. http://sources.redhat.com/autobook/.
- Autoconf Manual. http://www.gnu.org/software/autoconf/manual/index.html.
- The GNU Autoconf Macro Archive. http://www.gnu.org/software/ac-archive/.
- John Calcote. Autotools: a practitioner’s guide to Autoconf, Automake and Libtool. http://www.freesoftwaremagazine.com/books/autotools_a_guide_to_autoconf_automake_libtool.
Wikipedia Entry External Links
- The GNU configure and build system
- The pkg-config package
- automake manual
- GNU automake documentation
- GNU autoconf documentation
- Autotools Tutorial
- GNU Autoconf, Automake, and Libtool
- Autotools: a practitioner's guide to Autoconf, Automake and Libtool
- A Guide to Integrating CUDA with Autotools
- Autotools Mythbuster
- Introduction to the Autotools
0 Comments