]> git.donarmstrong.com Git - qmk_firmware.git/blob - protocol/lufa/LUFA-120730/LUFA/DoxygenPages/CompilingApps.txt
Squashed 'tmk_core/' content from commit 05caacc
[qmk_firmware.git] / protocol / lufa / LUFA-120730 / LUFA / DoxygenPages / CompilingApps.txt
1 /** \file\r
2  *\r
3  *  This file contains special DoxyGen information for the generation of the main page and other special\r
4  *  documentation pages. It is not a project source file.\r
5  */\r
6 \r
7 /** \page Page_CompilingApps Compiling the Demos, Bootloaders and Projects\r
8  *\r
9  *  The following details how to compile the included LUFA demos, applications and bootloaders using AVR-GCC.\r
10  *\r
11  *  \section Sec_Prerequisites Prerequisites\r
12  *  Before you can compile any of the LUFA library code or demos, you will need a recent distribution of avr-libc (1.6.2+)\r
13  *  and the AVR-GCC (4.2+) compiler. A standard "coreutils" package for your system is also required for command line\r
14  *  compilation of LUFA based applications.\r
15  *\r
16  *  \subsection SSec_PreqWindows Windows Prerequisites\r
17  *  On Windows, you will need a copy of the latest Atmel Toolchain, either downloaded and installed as a standalone\r
18  *  package, or installed as part of Atmel Studio. You will need to ensure that the "bin" directory of the toolchain\r
19  *  is available in your system's <b>PATH</b> environment variable.\r
20  *\r
21  *  In addition, you will need to install a ported version of the ZSH or BASH *nix shells, and a standard set of *nix\r
22  *  utilities such as <i>cut</i>, <i>find</i> and <i>sed</i>. These can be found in the "basic" system package of the\r
23  *  of the MinGW installer (<a>http://www.mingw.org</a>). Once installed, add the "msys\1.0\bin" of the MinGW installation\r
24  *  folder is added to your system's <b>PATH</b> environment variable.\r
25  *\r
26  *  The bootloaders currently also require the "bc" application, which can be installed from\r
27  *  <a>http://gnuwin32.sourceforge.net/downlinks/bc.php</a>. Once installed add the "GnuWin32\bin" path of the GnuWin32\r
28  *  installation folder to your system's <b>PATH</b> environment variable.\r
29  *\r
30  *  \subsection SSec_PreqLinux Linux Prerequisites\r
31  *  On Linux systems you will need to install the latest Linux distribution of the standalone Atmel Toolchain from the\r
32  *  Atmel website for general development, or use the latest avr-libc and avr-gcc packages for your chosen distribution's\r
33  *  package manager. For full device support, the Atmel standalone package is recommended.\r
34  *\r
35  *  \section Sec_Compiling Compiling a LUFA Application\r
36  *  Compiling the LUFA demos, applications and/or bootloaders is very simple. LUFA comes with makefile scripts for\r
37  *  each individual demo, bootloader and project folder, as well as scripts in the Demos/, Bootloaders/, Projects/\r
38  *  and the LUFA root directory. Compilation of projects can be started from any of the above directories, with a build\r
39  *  started from an upper directory in the directory structure executing build of all child directories under it. This\r
40  *  means that while a build inside a particular demo directory will build only that particular demo, a build started from\r
41  *  the /Demos/ directory will build all LUFA demo projects sequentially.\r
42  *\r
43  *  To build a project from the source via the command line, the command <b>"make all"</b> should be executed from the command\r
44  *  line in the directory of interest. To remove compiled files (including the binary output, all intermediately files and all\r
45  *  diagnostic output files), execute <b>"make clean"</b>. Once a "make all" has been run and no errors were encountered, the\r
46  *  resulting binary will be located in the generated ".HEX" file. If your project makes use of pre-initialized EEPROM\r
47  *  variables, the generated ".EEP" file will contain the project's EEPROM data.\r
48  *\r
49  *  \see \ref Page_BuildSystem for information on the LUFA build system.\r
50  */\r