diff --git a/lib/lm3s/libopencm3_lm3s.ld b/lib/lm3s/libopencm3_lm3s.ld index ebb79df1..67dd7bad 100644 --- a/lib/lm3s/libopencm3_lm3s.ld +++ b/lib/lm3s/libopencm3_lm3s.ld @@ -55,6 +55,11 @@ SECTIONS * You may need to fix this if you're using C++. */ /DISCARD/ : { *(.eh_frame) } + /* + * Another section used by C++ stuff, appears when using newlib with 64bit + * (long long) printf support - discard it for now. + */ + /DISCARD/ : { *(.ARM.exidx) } end = .; } diff --git a/lib/lpc13xx/libopencm3_lpc13xx.ld b/lib/lpc13xx/libopencm3_lpc13xx.ld index f10246d1..ec8c5459 100644 --- a/lib/lpc13xx/libopencm3_lpc13xx.ld +++ b/lib/lpc13xx/libopencm3_lpc13xx.ld @@ -55,6 +55,11 @@ SECTIONS * You may need to fix this if you're using C++. */ /DISCARD/ : { *(.eh_frame) } + /* + * Another section used by C++ stuff, appears when using newlib with 64bit + * (long long) printf support - discard it for now. + */ + /DISCARD/ : { *(.ARM.exidx) } end = .; } diff --git a/lib/stm32/f1/libopencm3_stm32f1.ld b/lib/stm32/f1/libopencm3_stm32f1.ld index 57ca3094..76c5e604 100644 --- a/lib/stm32/f1/libopencm3_stm32f1.ld +++ b/lib/stm32/f1/libopencm3_stm32f1.ld @@ -59,6 +59,11 @@ SECTIONS * You may need to fix this if you're using C++. */ /DISCARD/ : { *(.eh_frame) } + /* + * Another section used by C++ stuff, appears when using newlib with 64bit + * (long long) printf support - discard it for now. + */ + /DISCARD/ : { *(.ARM.exidx) } . = ALIGN(4); end = .; diff --git a/lib/stm32/f2/libopencm3_stm32f2.ld b/lib/stm32/f2/libopencm3_stm32f2.ld index 57ca3094..76c5e604 100644 --- a/lib/stm32/f2/libopencm3_stm32f2.ld +++ b/lib/stm32/f2/libopencm3_stm32f2.ld @@ -59,6 +59,11 @@ SECTIONS * You may need to fix this if you're using C++. */ /DISCARD/ : { *(.eh_frame) } + /* + * Another section used by C++ stuff, appears when using newlib with 64bit + * (long long) printf support - discard it for now. + */ + /DISCARD/ : { *(.ARM.exidx) } . = ALIGN(4); end = .; diff --git a/lib/stm32/f4/libopencm3_stm32f4.ld b/lib/stm32/f4/libopencm3_stm32f4.ld index 57ca3094..76c5e604 100644 --- a/lib/stm32/f4/libopencm3_stm32f4.ld +++ b/lib/stm32/f4/libopencm3_stm32f4.ld @@ -59,6 +59,11 @@ SECTIONS * You may need to fix this if you're using C++. */ /DISCARD/ : { *(.eh_frame) } + /* + * Another section used by C++ stuff, appears when using newlib with 64bit + * (long long) printf support - discard it for now. + */ + /DISCARD/ : { *(.ARM.exidx) } . = ALIGN(4); end = .;