STM workbench fehler

OP #4955636
Lesenswert?

Hallo zusammen,

ich entwickle zur Zeit mit dem STM workbench und STM32Cube.

Wenn ich mir mit dem Cube ein USB HID Costum generiere, funktioniert so 
weit alles. Implementiere ich den Descriptor und die Rx und Tx funktion 
vom USB Funktioniert auch alles.

Wenn ich jedoch den PC und STM Workbench offen lasse, funktioniert am 
nächsten Tag das build nicht mehr.

Das ist mir schon zwei Mal passiert, danach musste ich alles neu 
schreiben.

Ich bekomme dabei folgende Fehlermeldung:

c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/freertos.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/freertos.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/main.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/main.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/stm32f4xx_hal_msp.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/stm32f4xx_hal_msp.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/stm32f4xx_it.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/stm32f4xx_it.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/system_stm32f4xx.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/system_stm32f4xx.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/usb_device.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/usb_device.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/usbd_conf.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/usbd_conf.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/usbd_custom_hid_if.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/usbd_custom_hid_if.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, Src/usbd_desc.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file Src/usbd_desc.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, firmware/cmds/exeCmds.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file firmware/cmds/exeCmds.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, firmware/cmds/maintenance.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file firmware/cmds/maintenance.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, firmware/common/common.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file firmware/common/common.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, firmware/flash/flash.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file firmware/flash/flash.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, firmware/init/pinConfig.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file firmware/init/pinConfig.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, firmware/init/sysConfig.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file firmware/init/sysConfig.o
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  error: USB_HID_Costum.elf uses VFP 
register arguments, firmware/protocol/protocol.o does not
c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1 
.13.2.201703061525/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.4.1/../ 
../../../arm-none-eabi/bin/ld.exe:  failed to merge target specific data 
of file firmware/protocol/protocol.o
collect2.exe: error: ld returned 1 exit status
make: *** [USB_HID_Costum.elf] Error 1

13:30:22 Build Finished (took 1m:56s.449ms)

Hoffentlich könnt Ihr mir weiterhelfen, sonst muss ich wieder von neuem 
beginnen.

Herzlichen dank im vorraus.


Grüße

DDMW
#4955797
Lesenswert?

Wie sehen die Linker Einstellungen aus? Es muss GCC als Linker 
eingesetzt werden (nich LD direkt), und es müssen auch die MCU und FP 
Parameter beim Linker angegeben werden - ganz genau so wie beim 
Compiler.

Hintergrund: Die LibC gibt es in mehreren Varianten (Multilib). Der OP 
versucht die flasche zu verlinken. GCC als Linker-Frontend kann sich die 
korrekte Variante selbst suchen, wenn es die korrekten Optionen 
gefüttert bekommt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren