/** \file * * This file contains special DoxyGen information for the generation of the main page and other special * documentation pages. It is not a project source file. */ /** \page Page_CompilingApps Compiling the Demos, Bootloaders and Projects * * The following details how to compile the included LUFA demos, applications and bootloaders using AVR-GCC. * * \section Sec_Prerequisites Prerequisites * Before you can compile any of the LUFA library code or demos, you will need a recent distribution of avr-libc (1.6.2+) * and the AVR-GCC (4.2+) compiler. A standard "coreutils" package for your system is also required for command line * compilation of LUFA based applications. * * \subsection SSec_PreqWindows Windows Prerequisites * On Windows, you will need a copy of the latest Atmel Toolchain, either downloaded and installed as a standalone * package, or installed as part of Atmel Studio. You will need to ensure that the "bin" directory of the toolchain * is available in your system's PATH environment variable. * * In addition, you will need to install a ported version of the ZSH or BASH *nix shells, and a standard set of *nix * utilities such as cut, find and sed. These can be found in the "basic" system package of the * of the MinGW installer (http://www.mingw.org). Once installed, add the "msys\1.0\bin" of the MinGW installation * folder is added to your system's PATH environment variable. * * The bootloaders currently also require the "bc" application, which can be installed from * http://gnuwin32.sourceforge.net/downlinks/bc.php. Once installed add the "GnuWin32\bin" path of the GnuWin32 * installation folder to your system's PATH environment variable. * * \subsection SSec_PreqLinux Linux Prerequisites * On Linux systems you will need to install the latest Linux distribution of the standalone Atmel Toolchain from the * Atmel website for general development, or use the latest avr-libc and avr-gcc packages for your chosen distribution's * package manager. For full device support, the Atmel standalone package is recommended. * * \section Sec_Compiling Compiling a LUFA Application * Compiling the LUFA demos, applications and/or bootloaders is very simple. LUFA comes with makefile scripts for * each individual demo, bootloader and project folder, as well as scripts in the Demos/, Bootloaders/, Projects/ * and the LUFA root directory. Compilation of projects can be started from any of the above directories, with a build * started from an upper directory in the directory structure executing build of all child directories under it. This * means that while a build inside a particular demo directory will build only that particular demo, a build stated from * the /Demos/ directory will build all LUFA demo projects sequentially. * * To build a project from the source via the command line, the command "make all" should be executed from the command * line in the directory of interest. To remove compiled files (including the binary output, all intermediately files and all * diagnostic output files), execute "make clean". Once a "make all" has been run and no errors were encountered, the * resulting binary will be located in the generated ".HEX" file. If your project makes use of pre-initialized EEPROM * variables, the generated ".EEP" file will contain the project's EEPROM data. * * \see \ref Page_BuildSystem for information on the LUFA build system. */