-
Notifications
You must be signed in to change notification settings - Fork 34
Open
Labels
arduino mocksCompilation mocks for the Arduino libraryCompilation mocks for the Arduino librarybugSomething isn't workingSomething isn't workinghelp wantedExtra attention is neededExtra attention is needed
Description
Issue Summary
via https://github.com/ianfixes/arduino_ci/issues/140#issuecomment-656966055
My initial reverse-engineer of arduino compilation used the wrong compiler options: -std=c++0x
.
Here is a dump of actual arduino compilation commands:
/home/.../snap/arduino/41/.arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-g++
-mcpu=cortex-m0plus
-mthumb
-c
-g
-Os
-Wall
-Wextra
-Wno-expansion-to-defined
-std=gnu++11
-ffunction-sections
-fdata-sections
-fno-threadsafe-statics
-nostdlib
--param max-inline-insns-single=500
-fno-rtti
-fno-exceptions
-MMD
-DF_CPU=48000000L
-DARDUINO=10813
-DARDUINO_SAMD_MKRWIFI1010
-DARDUINO_ARCH_SAMD
-DUSE_ARDUINO_MKR_PIN_LAYOUT
-D__SAMD21G18A__
-DUSB_VID=0x2341
-DUSB_PID=0x8054
-DUSBCON
"-DUSB_MANUFACTURER=\"Arduino LLC\""
"-DUSB_PRODUCT=\"Arduino MKR WiFi 1010\""
-DUSE_BQ24195L_PMIC
-I/home/.../snap/arduino/41/.arduino15/packages/arduino/tools/CMSIS/4.5.0/CMSIS/Include/
-I/home/.../snap/arduino/41/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/
-I/home/.../snap/arduino/41/.arduino15/packages/arduino/hardware/samd/1.8.6/cores/arduino
-I/home/.../snap/arduino/41/.arduino15/packages/arduino/hardware/samd/1.8.6/variants/mkrwifi1010
-I/home/.../snap/arduino/current/Arduino/libraries/TaskScheduler/src
-I/home/.../snap/arduino/current/Arduino/libraries/WiFiNINA/src
-I/home/.../snap/arduino/current/Arduino/libraries/RTCZero/src
-I/home/.../snap/arduino/current/Arduino/libraries/StreamUtils/src
-I/home/.../snap/arduino/41/.arduino15/packages/arduino/hardware/samd/1.8.6/libraries/SPI
/home/.../snap/arduino/current/Arduino/libraries/RTCZero/src/RTCZero.cpp
-o /tmp/arduino_build_827430/libraries/RTCZero/RTCZero.cpp.o
Of these, the following look like they should be swapped in immediately:
-std=gnu++11
-Wno-expansion-to-defined
-nostdlib
This will likely change the nature of the workaround for things like String.h
and Stream.h
, possibly allowing (or requiring, depending on how you look at it) a ground-up rewrite of those.
Metadata
Metadata
Assignees
Labels
arduino mocksCompilation mocks for the Arduino libraryCompilation mocks for the Arduino librarybugSomething isn't workingSomething isn't workinghelp wantedExtra attention is neededExtra attention is needed