energia / msp430-lg-core

15 stars 12 forks source link

GCC 7.3.1 — Link Fails When Using Serial #75

Closed rei-vilo closed 5 years ago

rei-vilo commented 5 years ago

When using Serial with the new GCC 7.3.1, the link phase results in an error.

/Users/ReiVilo/Library/Energia15/packages/energia/tools/msp430-gcc/7.3.1.24/bin/msp430-elf-gcc -o /Users/ReiVilo/Library/Developer/Xcode/DerivedData/Test_New_GCC-bhrwisvezjaeunbfiqaztcfpzafx/Build/Products/Debug/embeddedcomputing.elf /Users/ReiVilo/Library/Developer/Xcode/DerivedData/Test_New_GCC-bhrwisvezjaeunbfiqaztcfpzafx/Build/Products/Debug/LocalLibrary.cpp.o /Users/ReiVilo/Library/Developer/Xcode/DerivedData/Test_New_GCC-bhrwisvezjaeunbfiqaztcfpzafx/Build/Products/Debug/main.cpp.o /Users/ReiVilo/Library/Developer/Xcode/DerivedData/Test_New_GCC-bhrwisvezjaeunbfiqaztcfpzafx/Build/Products/Debug/embeddedcomputing.a -Os -w -fno-rtti -fno-exceptions -Wl,--gc-sections,-u,main -mmcu=msp430fr5994 -DF_CPU= -L/Users/ReiVilo/Library/Energia15/packages/energia/tools/msp430-gcc/7.3.1.24/include -LBuilds -lm -mlarge -mcode-region=upper -mhwmult=auto /Users/ReiVilo/Library/Developer/Xcode/DerivedData/Test_New_GCC-bhrwisvezjaeunbfiqaztcfpzafx/Build/Products/Debug/embeddedcomputing.a(HardwareSerial.cpp.o):(.rodata._ZTI6Stream[typeinfo for Stream]+0x0): undefined reference to 'vtable for cxxabiv1::si_class_type_info' /Users/ReiVilo/Library/Developer/Xcode/DerivedData/Test_New_GCC-bhrwisvezjaeunbfiqaztcfpzafx/Build/Products/Debug/embeddedcomputing.a(HardwareSerial.cpp.o):(.rodata._ZTI14HardwareSerial[typeinfo for HardwareSerial]+0x0): undefined reference to 'vtable for cxxabiv1::si_class_type_info' /Users/ReiVilo/Library/Developer/Xcode/DerivedData/Test_New_GCC-bhrwisvezjaeunbfiqaztcfpzafx/Build/Products/Debug/embeddedcomputing.a(Print.cpp.o):(.rodata._ZTI5Print[typeinfo for Print]+0x0): undefined reference to 'vtable for cxxabiv1::class_type_info'

uint8_t myLED;

void setup()
{
    myLED = RED_LED;
    Serial.begin(9600);
    pinMode(myLED, OUTPUT);
}

void loop()
{
    Serial.println(millis());
    digitalWrite(myLED, 1 - digitalRead(myLED));
    delay(1000);
}
StefanSch commented 5 years ago

you tried this on MAC - right. Do you have any chance to also test it on a Windows machine? I just tried but could not see the issue.

StefanSch commented 5 years ago

issue found and fixed - no issue on energia

rei-vilo commented 5 years ago

Parameter -fno-rtti was missing from link command.