Skip to content

Update release version of arm-none-eabi-gcc #290

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
xloem opened this issue Jan 8, 2018 · 6 comments
Closed

Update release version of arm-none-eabi-gcc #290

xloem opened this issue Jan 8, 2018 · 6 comments

Comments

@xloem
Copy link

xloem commented Jan 8, 2018

Arduino currently provides arm-none-eabi-gcc tool version 4.8.3 .

This version is very old and is no longer distributed at arm.com .

If the compiler were upgraded to at least version 6, then modern c++ tools like boost::hana could be used.

This issue was moved from arduino/Arduino#7088 . I understand upgrading the toolchain could be a big effort because it needs to be validated again. It would be great to have a note regarding what this validation process is, in case collaborators could help.

@stevenj
Copy link

stevenj commented May 20, 2018

Seconded. 4.8.3 is ridiculously old and some software (eg, FreeRTOS 10) won't build with it.

@matthijskooijman
Copy link
Collaborator

I think this one can be closed in favor of #313 (which requests the same, but has a bit more discussion already).

@facchinm
Copy link
Member

facchinm commented Jun 4, 2018

Closing ad duplicate and tracking on #313 , staging packages are due to be available later today.

@facchinm facchinm closed this as completed Jun 4, 2018
@facchinm
Copy link
Member

facchinm commented Jun 4, 2018

By adding http://downloads.arduino.cc/packages/package_samd_newtoolchain_index.json you can test the latest toolchain; please test and report any error you may encounter, thanks!

@stevenj
Copy link

stevenj commented Jun 5, 2018

Ok, first feedback. Getting lots of warning about use of #if. See discussion about this that the webkit people had here: https://bugs.webkit.org/show_bug.cgi?id=167643

Two options.

  1. Suppress with -Wno-expansion-to-defined
  2. Change
    #if BLAH to #if defined (BLAH)

Option 2 may be difficult as a lot of the warning are coming from CMSIS which comes from the Atmel ASF. The warning seems overly pedantic, and so it seems reasonable to globally suppress it.

Warning look like this (ad nauseam):

/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:531:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #if SAMG_SERIES
 ^~~~~~~~~~~~~
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:531:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:531:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:531:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:531:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #if SAME_SERIES
 ^~~~~~~~~~~~~
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:535:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #if SAMD_SERIES
 ^~~~~~~~~~~~~~
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #if SAMD_SERIES
 ^~~~~~~~~~~~~~~
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #if SAMD_SERIES
 ^~~~~~~~~~~~~~
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #if SAMD_SERIES
 ^~~~~~~~~~~~~~~
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
/home/steven/.arduino15/packages/arduino/tools/CMSIS-Atmel/1.2.0/CMSIS/Device/ATMEL/sam.h:539:1: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #if SAMD_SERIES
 ^~~~~~~~~~~~~~```

@facchinm
Copy link
Member

facchinm commented Jun 5, 2018

@stevenj yes, it's a known issue (see #313 (comment)). Please continue the discussion there so we don't split up the topic 😛

boseji pushed a commit to go-ut/combined-ArduinoCore-samd that referenced this issue May 12, 2021
Fixes arduino#287

The warnings look like:
```
      Line 338 Char 37
      warning: 'void* memcpy(void*, const void*, size_t)' 
               writing to an object of type 'struct DmacDescriptor'
               with no trivial copy-assignment [-Wclass-memaccess]
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants