
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 |