energia / Energia

Fork of Arduino for the Texas Instruments LaunchPad's
http://energia.nu
Other
794 stars 672 forks source link

StellarPad: uint64_t Related Undefined References #247

Closed rei-vilo closed 10 years ago

rei-vilo commented 11 years ago

On the StellarPad, the following code raises many errors about undefined functions. Same for int64_t.

Undefined references to __exidx_start, __exidx_end, memcpy, abort

However, uint32_t and int32_t work fine on the StellarPad.

And uint64_t and int64_t raise no error on the LaunchPad MSP430.

uint64_t u64;

uint64_t result(uint64_t parameter, uint8_t decimal)
{
    for (uint8_t i=0; i<decimal; i++) {
        parameter /= 10;
    }
    return parameter;
}

void setup() {
    u64 = result(u64, 2);
}

void loop() {
}

/Applications/Energia.app/Contents/Resources/Java/hardware/tools/lm4f/bin/../lib/gcc/arm-none-eabi/4.7.1/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc.a(unwind-arm.o): In function 'get_eit_entry': /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/unwind-arm-common.inc:221: undefined reference to '__exidx_start' /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/unwind-arm-common.inc:221: undefined reference to 'exidx_end' /Applications/Energia.app/Contents/Resources/Java/hardware/tools/lm4f/bin/../lib/gcc/arm-none-eabi/4.7.1/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc.a(unwind-arm.o): In function 'unwind_phase2_forced': /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/unwind-arm-common.inc:346: undefined reference to 'memcpy' /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/unwind-arm-common.inc:376: undefined reference to 'memcpy' /Applications/Energia.app/Contents/Resources/Java/hardware/tools/lm4f/bin/../lib/gcc/arm-none-eabi/4.7.1/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc.a(unwind-arm.o): In function 'unwind_phase2': /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/unwind-arm-common.inc:289: undefined reference to 'abort' /Applications/Energia.app/Contents/Resources/Java/hardware/tools/lm4f/bin/../lib/gcc/arm-none-eabi/4.7.1/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc.a(unwind-arm.o): In function 'gnu_Unwind_Resume': /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/unwind-arm-common.inc:487: undefined reference to 'abort' /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/unwind-arm-common.inc:505: undefined reference to 'abort' /Applications/Energia.app/Contents/Resources/Java/hardware/tools/lm4f/bin/../lib/gcc/arm-none-eabi/4.7.1/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc.a(pr-support.o): In function '_Unwind_GetDataRelBase': /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/config/arm/pr-support.c:394: undefined reference to 'abort' /Applications/Energia.app/Contents/Resources/Java/hardware/tools/lm4f/bin/../lib/gcc/arm-none-eabi/4.7.1/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc.a(pr-support.o): In function '_Unwind_GetTextRelBase': /Users/rwessels/yagarto/gcc-build/arm-none-eabi/thumb/armv7e-m/fpu/fpv4-sp-d16/libgcc/../../../../../../../gcc-4.7.1/libgcc/config/arm/pr-support.c:400: undefined reference to 'abort' collect2: error: ld returned 1 exit status

robertinant commented 10 years ago

I just checked and this is fixed with the new compiler.