Comments (6)
I see a passing build 🎉 https://travis-ci.com/scls19fr/mwe_arduino_ci/builds/97377931
from arduino_ci.
It looks like I added a definition for this board, but it's incomplete -- it's missing the compiler flags that are needed for this compilation target. e.g. here's what the definition for leonardo
looks like in the default yaml file:
leonardo:
board: arduino:avr:leonardo
package: arduino:avr
gcc:
features:
defines:
- __AVR_ATmega32U4__
warnings:
flags:
That __AVR_ATmega32U4__
is the crucial value, and I don't know what it is (or if there are several, what they all should be).
It appears that not much more is known now than when I first went looking; here are a bunch of search results that just turned up people with the same problem as me:
- "Error compiling for --fqbn arduino:avr:mega (missing cpu flags)" arduino/arduino-cli#17
- "Compiler error: Unknown architecture on mega2560" https://www.avrfreaks.net/forum/compiler-error-unknown-architecture-mega2560
- "Which GCC + avr-libc + arduino for mega2560 actually works?" https://forum.arduino.cc/index.php?topic=66243.0
- "AVR-ATmega2560-GCC/Makefile" https://github.com/matteoserva/ChibiOS-AVR/blob/master/demos/AVR-ATmega2560-GCC/Makefile
- "AVR-GCC with ATMega2560" https://www.avrfreaks.net/forum/avr-gcc-atmega2560-bootloader
- "Do not buy the mega 2560 until gcc is fixed!!" http://forum.arduino.cc/index.php?topic=28269.0
This is a topic I am entirely unqualified to answer; all the existing stuff in the default YAML file came from values I found in other documentation or source files.
If you want to experiment with it (perhaps just using __AVR_ATmega2560__
, shown in this gist , I'd copy the following section into your .arduino-ci.yml
file and let me know if it works:
mega2560:
board: arduino:avr:mega:cpu=atmega2560
package: arduino:avr
gcc:
features:
defines:
- __AVR_ATmega2560__
warnings:
flags:
from arduino_ci.
Here's a list of all the MCU definition macros for AVR:
https://www.microchip.com/webdoc/avrlibcreferencemanual/using_tools_1using_avr_gcc_mach_opt.html
These are widely used in preprocessor conditionals for part-specific code.
from arduino_ci.
Here is my .arduino-ci.yml
https://github.com/scls19fr/mwe_arduino_ci/blob/master/.arduino-ci.yml
and build status on Travis https://travis-ci.com/scls19fr/mwe_arduino_ci/builds/97342356
from arduino_ci.
Looks like you're missing the toplevel platforms:
section. It should look like this:
platforms:
mega2560:
board: arduino:avr:mega:cpu=atmega2560
package: arduino:avr
gcc:
defines:
- __AVR_ATmega2560__
from arduino_ci.
@per1234 that's exactly what I'm looking for! If you have a list of all known Arduino platforms, I could really use your help on #89.
from arduino_ci.
Related Issues (20)
- Output errors to stderr HOT 11
- Empty examples folder causes build to fail HOT 2
- arduino_ci.rb fails to report compile error
- The build-CI does not support setWireTimeout(). HOT 1
- Can RP2040 build environment be supported? HOT 10
- compiling unit tests uses arduino platform specific code HOT 6
- running in gitlab CI HOT 3
- Platform.io Support HOT 3
- Improve factorization of "unused space"
- Running "bundle install --path vendor/bundle" generates deprecated warning HOT 1
- Use temporary directories for unit test artifacts
- ESP32 failing to install in CI build HOT 2
- Update documentation to recommend version pinning
- ESP32 flags unused function as error (should be warning) HOT 9
- libraries: "SoftwareSerial" does not work. HOT 11
- "Bad file descriptor" error when installing HOT 2
- Implement Wire.h slave device mock support
- 1.6.0 error: undefined method `library_of_name' for nil:NilClass (NoMethodError) HOT 5
- Show differences lined up and in quotes
- Unable to find library location on Windows
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arduino_ci.