> Es gibt einen Folder und einen Source Folder. Wann wird ein Source
> Folder verwendet und was macht der spezielles ?
Eclipse muss wissen, welche Dateien es kompilieren soll und welche
nicht.
Ein normaler Folder wird beim Build ignoriert. Bei einem Source-Folder
werden alle enthaltenen .c Dateien für ein Build verwendet.
> Wenn ich ein simples main.c direkt im Projektverzeichniss erstelle dann
> kann ich fehlerfrei kompilieren.
Das Projektverzeichnis ist per Default ein Source Folder.
> Wenn ich ein src Verzeichnis erstelle und dann das main.c in diesen
> Ordern verschiebe dann bekomme ich den Fehler
> *** No rule to make target `main.o', needed by `stm32_io_toggle'
> Wo muss ich im Eclipse den Pfad zum src eintrage so dass der Compiler
> das main.c wieder findet ... oder denke ich zu kompliziert ?
Project Properties -> C/C++ General -> Paths and Symbols -> Source
Location -> Add Folder
Danach noch sicherheitshalber den 'Debug' resp. 'Release' Folder im
Projektverzeichnis löschen und Eclipse sollte die main.c wieder
erfolgreich kompilieren.
>
> Wenn ich ein Projet mit der stm32 standard peripherie library erstellen
> will, reicht es die Libraries/CMSIS... und
> Libraries/STM32F10x_StdPeriph_Driver... in das Projekt zu importieren
> oder muss dem Eclipse noch jeder Pfad auf die Sourcen und Haeders
> definiert werden.
Das hängt stark davon ab, ob 'stm32' eine echte Library ist, oder nur
eine Codesammlung. Ich gehe mal von letzterem aus und dann kannst Du die
Library importieren, und die entsprechenden Folders als 'Source Folder'
markieren (s.o.).
Dann musst Du aber auch noch dem Compiler sagen, wo er die Includes der
stm32 Library finden kann (Source-Folder reicht da nicht)
Dazu den Pfad Libraries/CMSIS etc. bei "Project Properties -> C/C++
Build -> Settings -> Tool Settings -> AVR Compiler -> Directories"
hinzufügen.
Damit könnte es schon funktionieren, aber wahrscheinlich musst Du noch
ein bisschen probieren, bis es richtig funktioniert.
Thomas