Hallo zusammen,
ich bin auch gerade dabei... kann auch schon ein Projekt kompilieren,
"nur" das linken funktioniert nicht.
Ich bekomme einen haufen Fehler in der fogenden Art:
1 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:438: undefined reference to `FOC_SetIdref'
|
2 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:284: undefined reference to `PID_SetKD'
|
3 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:303: undefined reference to `STO_GetObserverGains'
|
4 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:324: undefined reference to `STO_CR_GetObserverGains'
|
5 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:345: undefined reference to `STO_GetObserverGains'
|
Ich vermute das die Funktionen in einer der Biblotheksdateien im
Verzeichniss: ...Project\EWARM\MC Library Compiled\Exe liegen.
Aber wenn ich die in den Linker einstellungen dazu schreibe (für mein
Projekt müsste es die MC_Library_STM32F303_dual_drive.a sein), gibts die
Fehlermeldung, das er die datei nicht öffnen kann.
[code]
[cc] arm-none-eabi-gcc -mcpu=cortex-m4 -mfpu=fpv4-sp-d16
-mfloat-abi=hard -mthumb -Wall -g -nostartfiles -Wl,-Map=blam1.map -Os
-Wl,--gc-sections -LC:\CooCox\CoIDE\configuration\ProgramData\blam2
-Wl,-TC:\CooCox\CoIDE\configuration\ProgramData\blam2/arm-gcc-link.ld -g
-o blam1.elf ..\obj\stm32f30x_opamp.o ..\obj\UITask.o
..\obj\stm32f30x_rcc.o
..\obj\USART_F30X_PhysicalLayerCommunication_Class.o
..\obj\stm32f30x_adc.o ..\obj\UserInterfaceClass.o ..\obj\stm32f30x_it.o
..\obj\stm32f30x_comp.o ..\obj\stm32f30x_gpio.o ..\obj\main.o
..\obj\Timebase.o ..\obj\stm32f30x_MC_it.o
..\obj\system_stm32f30x_temp.o ..\obj\syscalls.o ..\obj\stm32f30x_misc.o
..\obj\stm32f30x_tim.o ..\obj\startup_stm32f30x.o
..\obj\FrameCommunicationProtocolClass.o ..\obj\UIIRQHandlerClass.o
..\obj\stm32f30x_dac.o ..\obj\MotorControlProtocolClass.o
..\obj\stm32f30x_usart.o ..\obj\PhysicalLayerCommunication_Class.o
-L..\..\..\..\mc_lib\mc_lib\Debug\bin -lmc_lib -L..\..\..\..\mc_lib
-lmc_library_stm32f303_dual_drive
[cc] c:/programme/gnu tools arm embedded/4.8
2014q2/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/
ld.exe: cannot find -lmc_library_stm32f303_dual_drive
[code/]
Kann es sein, das es nicht funktioniert, weil die mit nem anderen
kompiler erstellt worden ist?
Leider scheinen davon auch nicht die Quellcodes zur verfügung zu stehen,
richtig??? :-(