Hi,
I’ve been using your Bricktronics shields happily for a few years in my teaching. This year, after installing the libraries, I’m getting a compile issue, pasted below. I’m not sure what the problem is; can you help? Thank you!
The libraries I’ve installed are:
• Bricktronics Motor: https://github.com/wayneandlayne/BricktronicsMotor
• Bricktronics Shield
• Bricktronics Light
- PID Controller: https://github.com/br3ttb/Arduino-PID-Library/
- Adafruit MCP23017 Library
- Encoder:
(removed most of my links because of forum restrictions)
I installed all of these, and also added verifysketchconfig.py (from bricktronics) to the Bricktronics library folders.
Any insight would be most appreciated.
Amy
“collect2: error: ld returned 1 exit status
exit status 1
Error compiling for board Arduino/Genuino Uno”
Arduino: 1.8.1 (Mac OS X), Board: “Arduino/Genuino Uno”
Build options changed, rebuilding all
libraries/BricktronicsMotor/utility/Encoder.cpp.o (symbol from plugin): In function Encoder::interruptArgs': (.text+0x0): multiple definition of
Encoder::interruptArgs’
libraries/Encoder/Encoder.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::Compute()’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::SetTunings(double, double, double)’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::SetOutputLimits(double, double)’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::SetSampleTime(int)’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::Initialize()’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::SetMode(int)’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::SetControllerDirection(int)’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::PID(double*, double*, double*, double, double, double, int)’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::PID(double*, double*, double*, double, double, double, int)’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::GetKp()’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::GetKi()’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::GetKd()’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::GetMode()’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsMotor/utility/PID_v1.cpp.o (symbol from plugin): In function PID::Compute()': (.text+0x0): multiple definition of
PID::GetDirection()’
libraries/PID_v1/PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::bitForPin(unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::regForPin(unsigned char, unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::writeRegister(unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::begin(unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::begin()’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::writeGPIOAB(unsigned int)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::readRegister(unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::updateRegisterBit(unsigned char, unsigned char, unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::pinMode(unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::pullUp(unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::setupInterruptPin(unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::digitalWrite(unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::digitalRead(unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::setupInterrupts(unsigned char, unsigned char, unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::getLastInterruptPin()’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::getLastInterruptPinValue()’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::readGPIOAB()’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
libraries/BricktronicsShield/utility/Adafruit_MCP23017.cpp.o (symbol from plugin): In function Adafruit_MCP23017::bitForPin(unsigned char)': (.text+0x0): multiple definition of
Adafruit_MCP23017::readGPIO(unsigned char)’
libraries/Adafruit-MCP23017-Arduino-Library/Adafruit_MCP23017.cpp.o (symbol from plugin):(.text+0x0): first defined here
collect2: error: ld returned 1 exit status
exit status 1
Error compiling for board Arduino/Genuino Uno.