GUI上にはビルドオプションを設定する画面は存在しないので、プラットフォームごとにビルドオプションが記述されているファイplatform.txtを直接編集します。
過去のバージョンではplatform.local.txtが存在していたのですが、1.6.xの頃に議論され、残骸は残ってますが使用するようになっていません。
設定ファイルの場所は、使用しているOS、対象のArduinoにより異なります。
Arduino IDE 1.8.3で、Arduino Uno R3を対象とした場合は次のようになります。
OS | path |
---|---|
macOS Sierra 10.12.6 | /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/platform.txt | Windows 10 pro | C:\Program Files (x86)\Arduino\hardware\arduino\avr/platform.txt |
コンパイラオプションは下記の場所になります。(platform.txtから抜粋)
compiler.c.flags=-c -g -Os {compiler.warning_flags} -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects
compiler.c.elf.flags={compiler.warning_flags} -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections
compiler.cpp.flags=-c -g -Os {compiler.warning_flags} -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno
「GNU Compiler Collection」の「3.10 Options That Control Optimization」から、-Osがサイズ優先の最適化なのが分かります。