Closed maxgerhardt closed 1 year ago
Oh, and actually a really critical thing too: The -std=c++17
is missing for CXXFLAGS and -std=gnu11
is missing in CLFAGS
. It doesn't set the C/C++ standard version.
Thanks for a thorough review.
What PlatformIO misses:
I've added flags except -g3
as using it in release mode is quite debatable and -nostdlib
added to LINKFLAGS
as it's a linker option.
-DLWIP_DNS=1 given for Minima. Only used with Uno R4 WiFi
Removed
Different warning flags?
Flags are probably the same, the difference is that we're importing them into the build environment, so they're visible in CLI.
no .map file generation
Added.
Arduino IDE uses GCC 7.0.1, PlatformIO uses 10.3.1. May have subtle differences.
I believe it shouldn't be an issue.
The -std=c++17 is missing for CXXFLAGS and -std=gnu11 is missing in CLFAGS.
Added.
Looking all good now!
Reference platform.txt: https://github.com/arduino/ArduinoCore-renesas/blob/1.0.1/platform.txt
Example PlatformIO invocation:
Example Arduino IDE invocation:
What PlatformIO misses: 1:
-Os
(makes firmware *really big!)-g3
-fno-use-cxa-atexit
-fno-rtti
-fno-exception
-nostdlib
What's wrong:
-DLWIP_DNS=1
given for Minima. Only used with Uno R4 WiFiIn the Linking phase, PlatformIO:
Arduino IDE:
What's missing:
.map
file generationIn general: