ATNEL tech-forum
https://forum.atnel.pl/

Atmel toolchain - multiple definition of `__ltsf2'
https://forum.atnel.pl/topic16973.html
Strona 1 z 1

Autor:  savian86 [ 3 gru 2016, o 21:21 ]
Tytuł:  Atmel toolchain - multiple definition of `__ltsf2'

Cześć,
Bawię się C++ w Eclipsie + Atmel toolchain i natrafiłem na pewien problem gdy chciałem użyć liczb zmiennoprzecinkowych mając podpiętą bibliotekę z arduino WString

Kod:
avr-g++ -Wl,-Map,Encoder.map,--cref -mrelax -Wl,--gc-sections -lc -lm -lc -mmcu=atmega644p -o "Encoder.elf"  ./LCD_HD44780/Print.o ./LCD_HD44780/WString.o ./LCD_HD44780/lcd_hd44780.o  ./main.o   
c:/program files (x86)/atmel/avr tools/avr toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr5\libc.a(cmpsf2.o):/data2/home/toolsbuild/jenkins-knuth/workspace/avr8-gnu-toolchain/src/avr-libc/libm/fplib/cmpsf2.S:58: multiple definition of `__ltsf2'
c:/program files (x86)/atmel/avr tools/avr toolchain/bin/../lib/gcc/avr/4.7.2/avr5\libgcc.a(_lt_sf.o):/data2/home/toolsbuild/jenkins-knuth/workspace/avr8-gnu-toolchain/src/gcc/libgcc/fp-bit.c:1269: first defined here
c:/program files (x86)/atmel/avr tools/avr toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/bin/ld.exe: Disabling relaxation: it will not work with multiple definitions
c:/program files (x86)/atmel/avr tools/avr toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr5\libc.a(cmpsf2.o):/data2/home/toolsbuild/jenkins-knuth/workspace/avr8-gnu-toolchain/src/avr-libc/libm/fplib/cmpsf2.S:58: multiple definition of `__lesf2'
c:/program files (x86)/atmel/avr tools/avr toolchain/bin/../lib/gcc/avr/4.7.2/avr5\libgcc.a(_le_sf.o):/data2/home/toolsbuild/jenkins-knuth/workspace/avr8-gnu-toolchain/src/gcc/libgcc/fp-bit.c:1290: first defined here
collect2.exe: error: ld returned 1 exit status
make: *** [Encoder.elf] Błąd 1


struktura projektu jak widać jest prosta
Obrazek

Plik main
Składnia: [ Pobierz ] [ Ukryj ]
język cpp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Klasa Print zredukowana:
Składnia: [ Pobierz ] [ Ukryj ]
język cpp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


kompilator nie rzuca błędem, gdy wywalę
#include "WString.h"
i wykluczę z projektu. Nie jestem w stanie sobie z tym poradzić, próbowałem do linkera dodać -l libm, jednak dostaje info, że nie odnaleziono.
Może ktoś z was już walczył z tym wcześniej?

Autor:  wrzaskun [ 16 gru 2016, o 23:12 ]
Tytuł:  Re: Atmel toolchain - multiple definition of `__ltsf2'

Mi z samym Wstring śmiga kompilacja, ale nie mam tych bibliotek Twoich z C++, dla ułatwienia może podlinkuj cały projekt, aby można było pobrać i odpalić.
Wstring.h includuje string.h

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/