-
Notifications
You must be signed in to change notification settings - Fork 183
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
Travis fails since dot_a_linkage was added to SPI and Wire library #135
Comments
The issue is not specific to the Travis CI build. The same compilation error will occur if you compile the SD or Ethernet library example sketches with the Arduino IDE. After some investigation, I found that the problem only occurs when the Error: #include <SPI.h>
#include <Ethernet.h>
void setup() {
byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
Ethernet.begin(mac, IPAddress(192, 168, 1, 177));
}
void loop() {} Success: #include <Ethernet.h>
void setup() {
byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
Ethernet.begin(mac, IPAddress(192, 168, 1, 177));
}
void loop() {} Success: #include <Ethernet.h>
#include <SPI.h>
void setup() {
byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
Ethernet.begin(mac, IPAddress(192, 168, 1, 177));
}
void loop() {} It seems that the order of the files in Here's the working
Here's the non-working one:
Notice that in the working one, SPI.a comes near the end, just before core.a. In the non-working one, SPI.a comes near the start, just after dotatest.ino.cpp.o. The example sketches could easily be modified to compile by changing the order of the |
We don't really solve anything by modifying the sketches. Yes, Travis will eat it but there's still a hidden trap in there. What do you suggest we do? This must be a bug in the builder, right? |
I'm really out of my depth with this topic. I only figured out as much as I did after a lot of fumbling around. It certainly does seem like a bug, but I just don't have the level of understanding about what's happening to be able to say for sure. Maybe it's only that some magical change needs to be made to the SPI and Wire libraries that will make it not an issue. If it is a bug, it would be great to get it reported to Arduino so it can hopefully get fixed soon. I don't think many people are using the If it is a bug, even if Arduino fixes it immediately there is still the issue of backwards compatibility with all the previous IDE versions that still have the bug. |
Mee too. I don't know too much about the building process itself and all things involved.
That is true. However, if they fix it in a newer version, we can point users who are experiencing this problem to use the latest version. Where should this issue be reported? It would be great if some of the developers would look into this. dot_a_linkage is indeed useful! |
I'm pretty sure arduino-builder is where |
I decided to "roll back" to prevent breaking existing user code. Wire1.h will now have to be manually included. IMO I think this is the best solution for now. |
@per1234 can you look into this? I've looked at the log but nothing stands out to me.
Detailed output can be found in Travis job no. 90.
The text was updated successfully, but these errors were encountered: