AVR GNU C Compiler Options
Option | Description |
---|---|
General options | |
-mcall-prologues |
Use subroutines for functions prologues and epilogues |
-mno-interrupts |
Change stack pointer without disabling interrupts |
-funsigned-char |
Default char type is unsigned |
-funsigned-bitfield |
Default bit field is unsigned |
Preprocessor options |
|
-nostdinc |
Do not search system directories |
-F |
Preprocess only |
Symbols options | |
Symbols in source can be defined (-D) or undefined (-U). New symbol declarations can be added, modified, or reordered, using the interface buttons below:
|
|
Include directories |
|
Contains all the included header and definition directories, can be modified, using the same interface as symbols. |
|
Optimization options | |
Optimization level (drop-down menu): -O0, -O1, -O2, -O3, -Os |
No optimization, optimize for speed (level 1 - 3), optimize for size |
Other optimization flags (manual input form) |
Here you should write optimization flags specific for the platform and your requirements |
-ffunction-sections |
Prepare functions for garbage collection, if a function is never used, its memory will be scrapped |
-fpack-struct |
Pack structure members together |
-fshort-enums |
Allocate only as many bytes as needed by the enumerated types |
-mshort-calls |
Use rjmp/rcall limited range instructions on the >8K devices |
Debug options | |
Debug level (drop-down menu): none, -g1, -g2, -g3 |
Specifies the level of tracing and debugging code and headers left or inserted in the source code |
Other debug options (form field) |
Architecture specific debug options |
Warning messages output options | |
-Wall |
All warnings |
-Werror |
Escalate warnings to errors |
-fsyntax-only |
Check syntax only |
-pedantic |
Check conformity to GNU, raise warnings on non-standard programming practice |
-pedantic-errors |
Same as above, plus escalate warnings to errors |
Miscellaneous options | |
Other flags (form field) |
Input other project-specific flags |
-v |
Verbose |
-ansi |
Support ANSI programs |
-save-temps |
Do not delete temporary files |
Option | Description |
Option | Description |
---|---|
-Wl -nostartfiles |
Do not use standard files |
-Wl -nodefault |
Do not use default libraries |
-Wl -nostdlib |
No start-up or default libraries |
-Wl -s |
Omit all symbol information |
-Wl -static |
Link statically |
Libraries options |
|
Libraries -Wl, -l (form field) |
You can add, prioritize, or edit library names
here, using these buttons: |
Library search path -Wl,-L (form field) |
You can add, prioritize or edit path where the linker will search for dynamically linked libraries, same interface as above |
Optimization options |
|
-Wl, -gc-sections |
Garbage collect unused sections |
--rodata-writable |
Put read-only data in writable spaces |
-mrelax |
Relax branches |
Miscellaneous options |
|
Other linker flags (form field) |
Input other project-specific flags |
Option | Description |
---|---|
Optimization options |
|
Assembler flags (form field) |
Miscellaneous assembler flags |
Include path (form field) |
You can add, prioritize or edit path to the architecture and platform specific included files here |
-v |
Announce version in the assembler output |
Debugging options |
|
Debugging level (drop down menu) -Wa -g1, -Wa, -g2, -Wa, -g3 |
Defines a level of debugging symbol and debugging source insertion |