STM32F4 Projekt

Gast #4592781
Lesenswert?

Guten Tag,

ich bin aktuell dabei mir ein STM32F4xx Template zu erstellen.
Irgendwie habe ich aber noch ein merkwürdigen Fehler:

Wenn ich die makefile aufrufe bekomme ich die Fehlermeldung:
exit.c:(.text.exit+0x16): undefined reference to `_exit'
collect2: error: ld returned 1 exit status

Irgendetwas scheint mit dem Linker nicht zu stimmen. Nach etwas googlen 
wurde in einem Beitrag vorgeschlagen --specs=rdimon.specs zu den 
Linker-Flags zu packen.

Das scheint aber nicht die Lösung zu sein:
(.text+0xe0): undefined reference to `__end__'
collect2: error: ld returned 1 exit status

Bestimmt habe ich einen groben Schnitzer in irgendeiner Datei.

Kann mir da jemand weiterhelfen?


Beste Grüße.
Angehängte Dateien:
Gast #4592860
Lesenswert?

Ach, er dachte ich will die exit() aus der stdlib.h benutzen.
Danke!

Ein Problem habe ich noch.
Und zwar möchte ich die
startup_stm32f429_439xx.s
aus dem Verzeichnis
libraries/CMSIS/Device/ST/STM32F4xx/Source/Templates/arm/
hinzufügen.

> SRCS += startup_stm32f429_439xx.s
> ...
> CLFAGS += -Ilibraries/CMSIS/Device/ST/STM32F4xx/Source/Templates/arm
> ...
> OBJS := $(OBJS:.s=.o)

Leider mekert make:
make: *** Keine Regel vorhanden, um das Target 
»build/startup_stm32f429_439xx.o«,
  benötigt von »build/main.elf«, zu erstellen.  Schluss.

Ne Idee?
Angehängte Dateien:
#4592894
Lesenswert?

Willst du wirklich direkt das Template nehmen? Dann immer aufpassen, 
dass du es dort nicht änderst. Zumindest, wenn du die Dateien dort auch 
für andere Projekte nutzt.

-I ist der Inkludepfad, wo der Präprozessor die Header sucht.
Dies hat nichts mit dem Startup Assemblerfile zu tun.

Du willst aber, dass make eine Quelle sucht für:
1
$(OBJDIR)/%.o: %.s

Probiere mal
1
VPATH += libraries/CMSIS/Device/ST/STM32F4xx/Source/Templates/arm

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