Hi! Hab mir jetzt die ganze MSPGCC 06.03.03 runtergeladen, in C:\Compiler\mspgcc installiert, alle PATH Sachen gemacht, und wenn ich die Ziele msp430-gcc test1.c -mmcu=msp430x1121 test1.lst eintippe und starte, kommen hunderte von Fehlermeldungen, dass die #ifndef, #define, #endif, usw... in den ganzen .H Datein nicht funktionieren. Kann mir da jemand einen Tipp geben. Ich möchte nämlich den MSPGCC in meine SDT-Programmierumgebung einbinden. Nähere Infos zu SDT: http://www.weinga-unity.de.vu mfg Weichinger Klaus
Btw., wenn Du es nur in eine Umgebung einbinden willst, solltest Du von dort aus ohnehin nur "make" aufrufen und den Rest der Projektlogik in einem Makefile hinterlegen.
Wie ich Projekte später kompiliere, ist mir jetzt egal. Ich will überhaupt einmal, dass es kompiliert. Meine Programmierumgebung ermöglicht mir es, die GCC so einzubinden, dass ich mir die MAKE-Sachen und das schreiben einer BAT-Datei für jedes Projekt erspare. Derzeit hab ich die SDCC für 8051er eingebunden, und per Mausklick (wie in µVISION und KEIL51) wird jedes Projekt kompiliert (egal ob 5 oder 50 Projektdateien). Jetzt will ich den MSPGCC einbinden, jedoch muss ich einmal herausfinden, wie das Ablauf einer Kompilierung für ein Multifileprojekt funktioniert. DIE TEST1.C funktioniert ja schon einmal nicht. Wie aber bekomm ich es zum laufen? Mach ich was falsch? mfg Weichinger Klaus http://www.weinga-unity.de.vu
Vermutlich machst Du was falsch. Siehe erste Antwort. Aber wenn Du `make' einsparen willst ohne was vergleichbares zu bieten (make ist kein einfacher Batch), dann denke ich eher, daß Du etwas grundsätzlich falsch machst. Nicht daß ich make für den Stein der Weisen halten würde, es gibt auch einige Alternativprojekte, die aus den Mängeln von make gelernt haben -- aber Deine Herangehensweise macht mir nicht den Eindruck, als wüßtest Du überhaupt um die Mängel von make und warum man da etwas besser machen könnte. Sorry, wenn das arrogant klingt.
Bis jetzt mach ich garnichts mir make, und hab das auch nochnie gebraucht. Ich will einfach in der MS-DOS eingabeaufforderung die TEST1.C laut TUT kompilieren. Ich gebe ein: msp430-gcc test1.c -mmcu=msp430x1121 -o test1.elf Es werden dann zig Fehler angezeigt, dass die #ifndef und #define Probleme machen. Warum weiß ich nicht. Und jetzt eine Frage zu Make: ================================== Make ist so "ähnlich" wie BAT. Man definiert in der Make, wie das projekt Kompiliert werden soll. Soweit hab ich das glaub ich verstanden. Man hat eine Projekt mit 5 Datein und eine Make, die dafür funktioniert. Was ist, wenn ich eine 6. Datei hinzufügen will. Muss ich diese Datei in der 6 erwähnen, oder funktioniert das automatisch (aber unter der Annahme, dass die 6. Datei eine .H ist aber nicht in einem Ordner ist, der in der PATH definiert ist. also z.B. D:\XY\zz\hallo.H). mfg Weichinger Klaus
Solange Du hier nur ,,die machen Probleme'' schreibst, wird Dir wohl keiner helfen können. Meine Kristallkugel ist jedenfalls gerade in der Werkstatt, ich habe also keine Ahnung, was das wohl für Meldungen sein werden. Bitte keine Screenshots von Fehlermeldungen. Ich hoffe mal, Du hast nicht wirklich ein MS-DOS (alias Win95/98/ME), sondern wenigstens ein einigermaßen brauchbares Windows (NT oder höher), dann kannst Du im cmd.exe folgendes tun: msp430-gcc ... 2>&1 > logfile Anschließend kannst Du aus »logfile« mit cut&paste die relevanten Stellen hier mal zitieren. Wenn das sehr viel ist, dann genügt es sicher, die ersten 10 oder so davon zu zitieren. (Bei MS-DOS-Derivaten hast Du leider keine Chance, das so zu tun, da deren Kommandoprozessor command.com schlicht zu blöd ist, die Fehlermeldungen auch in eine Datei umzulenken.) make: richtig, man definiert in einem Makefile, wie das Projekt aufgebaut ist. Dabei werden sowohl die zu verarbeitenden Dateien als auch die Kommandos notiert. Die Dateien werden in ihren gegenseitigen Abhängigkeiten beschrieben, also: das Endergebnis hängt von diesen und jenen Objektdateien ab, und wird durch Linken derselben erzeugt. Jede Objektdatei hängt von der ihr zugeordneten C-Quelldatei ab und wird aus dieser durch Compilieren erzeugt. make baut daraus einen Abhängigkeitsbaum und stellt anhand der Dateidaten fest, was auszuführen ist, um alles auf den neuesten Stand zu bringen. -- Das ist der wesentliche Unterschied zu einem Batchfile, der wird immer komplett runtergenuddelt. -- Die Quelldateien und die Abhängigkeiten (.h sind ja keine Quelldateien selbst) muß man im Makefile beschreiben, wobei dafür auch jeweils Tricks denkbar sind, die das automatisieren. PATH wird immer nur für ausführbare Dateien benötigt, mit Deinen Programmquellen (bzw. .h Dateien) hat der überhaupt nichts zu tun.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.