Hallo zusammen, Andere Beiträge zu diesem Thema sind schon recht alt. Daher meine konkrete Frage: Ich will die letze WinAVR Distribution von 2010 mit der letzten Atmel Toolchain verheiraten. Gehe ich richtig in der Annahme, daß alles von WinAVR-20100110 ausser \utils, \pn, WinAVR-20100110-uninstall.exe, und path.log gelöscht werden soll und die gesamte Toolchain in das WinAVR Verzeichnis kopiert wird ? Funktionieren tut das schon mal. d.h. ich kann compilen und linken, möchte aber sicher gehen, daß ich nichts vergessen habe. Gruß Reiner
Johann L. schrieb: > Warum in aller Welt willst du was löschen? Ja soll ich die alte Toolschain mit der neuen mischen ? Was kommt da raus ? Reiner
Warum in aller Welt willst du was mischen? Es können beliebig viele Toolchains parallel installiert werden, und zwar in unterschiedliche Ordner. Es gibt dann 2 Möglichkeiten, die Toolchain auszuwählen: 1) Angabe des absoluten Pfades, z.B. im Makefile
1 | e:\Installed\Toolchain-xyz\bin\foo-gcc modul.c -c ... |
2) Eintragen des Verzeichnisses, in dem foo.gcc zu finden ist, in die PATH Umgebungs-Variable. Aufruf von "foo-gcc" nimmt dann das Programm, das als erstes im Pfad gefunden wird. Einfach mal auf einer Console ausprobieren! foo-gcc --version zeigt dann ab es der Compiler ist, den du erwartest.
Und "mischen" oder "löschen" oder "überschreiben" würd ich auf gar keinen Fall. ZUm einen ist das nicht notwendig, und zum anderen ist danach absolut unklar, in welchem Zustand sich das Ding befindet.
Johann L. schrieb: > Und "mischen" oder "löschen" oder "überschreiben" würd ich auf gar > keinen Fall. ZUm einen ist das nicht notwendig, und zum anderen ist > danach absolut unklar, in welchem Zustand sich das Ding befindet. Genau darum geht es mir. Mischen, d.h. überschreiben der alten Dateien unter gleichzeitiger Beibehaltung der Dateien, die nicht mehr relevant sind will ich nicht. Da sind Patches, Docs, etc, die nur für die 2010 Distribution galten. Aber, die Atmel Toolchain hat keine Utilities wie z.B. make.exe etc., da sie auf das Vorhandensein von Atmel Studio setzt. Darum meine Frage (siehe erster Beitrag): Alles löschen ausser utils, pn, und die uninstall.exe. Also, falls jemand das schon mal gemacht hat, beantwortet doch einfach meine Frage, oder sagt was ihr machen würdet und nicht was ihr nicht machen würdet. Gruss Reiner
Reiner schrieb: > Also, falls jemand das schon mal gemacht hat, beantwortet doch einfach > meine Frage, oder sagt was ihr machen würdet und nicht was ihr nicht > machen würdet. Hat doch Johann beantwortet. Parallel installieren. Grüsse, René
Ein Nachschlag zum vorigen Beitrag. Die Verzeichnisstruktur der Atmel Toolchain unterscheidet sich von der Struktur von WinAvr. Die Toolchain ist allein nicht funktionabel, da alle Utility Programme fehlen. Dies zum Hintergrund meiner Frage. Gruss Reiner
Üblicherweise sind bei solch abstrusen Fragen selten die Antworten das Problem, sondern immer die Fragen. Und nein, das hat noch niemand gemacht, denn WinAVR mit neuerer toolchain überschreiben ist in etwa wie ein Döner ohne Brot, Fleisch. Salat, und Soße, dafür mit Pizzateig und Käse. Du hast richtig erkannt, daß die neuen Atmel toolchains ohne make (und ohne Notepad) kommen. Wenn du unbedingt nur eine toolchain auf dem Rechner haben willst, kopier dir halt das make in den bin Ordner der neuen Toolchain, und alles wird gut. Oliver
Oliver S. schrieb: > Und nein, das hat noch niemand gemacht Hallo Oliver, ja das ist wohl das Problem: Nicht die abstruse Frage sondern die Antworten von Leuten, die das noch nie gemacht haben. Das Kopieren von make.exe allein reicht wohl nicht ganz aus; der Rest der utilities muss wohl auch noch mit. Ich kann sehr wohl sehen, dass der richtige Compiler invoked wird, aber ich wollte nur wissen, ob ich bei dem Kopieren sonst noch was verg3ssen habe. Aber so ist das eben mit den abstrusen Fragen. Reiner
Reiner schrieb: > Das Kopieren von make.exe allein reicht wohl nicht ganz aus; der Rest > der utilities muss wohl auch noch mit. Tja, man muß nicht alles gemacht haben, um zu wissen, wie es geht. Wenn dir nur das make fehlt, dann brauchst du auch nur das make zu kopieren. Klingt blöd, ist aber so. Wenn du auch noch den Rest der Utilities benötigst, musst du die natürlich auch noch kopieren. Die Atmel-Toolchain braucht die aber alle nicht. Die hat alles dabei, um vollständige Programme zu erzeugen. Oliver
Reiner schrieb: > Mischen, d.h. überschreiben der alten Dateien unter gleichzeitiger > Beibehaltung der Dateien, die nicht mehr relevant sind will ich nicht. > Da sind Patches, Docs, etc, die nur für die 2010 Distribution galten. Mit Oatches kannst du eh nix anfangen, weil die sich i.d.R auf die Quellen der Tools beziehen. > Aber, die Atmel Toolchain hat keine Utilities wie z.B. make.exe etc., > da sie auf das Vorhandensein von Atmel Studio setzt. Na und? Wenn WinAVR weiterhin im PATH ist, aber nach einer neueren Version, wird make immer noch dort gefunden. Es sei denn, in einem Pfad vor dem WinAVR-Pfad wird ein make gefunden, was nach deinen Angaben ja nicht der Fall ist. Und außerdem steht make in einem eigenen Verzeichnis mit anderen Utils und nicht zusammen beim Compiler. Beispiel WinAVR-20100110 Compiler (avr-gcc) steht in ./bin make steht in ./utils/bin > Also, falls jemand das schon mal gemacht hat, beantwortet doch einfach > meine Frage, Hab ich schon, und ich hab momentan genau 25 Versionen installiert, von 3.4.6 bis 5.2.1, darunter WinAVR, Atmel-Toolchains und selber generierte Canadian Crosses von http://sourceforge.net/projects/mobilechessboar/files/avr-gcc%20snapshots%20(Win32)/ > oder sagt was ihr machen würdet und nicht was ihr nicht > machen würdet. Du kannst meinen Beitrag lesen und was ich zu PATH geschrieben habe oder Aufruf per absolutem Pfad. Aber lesen musst du schon...
Oliver S. schrieb: > Die > Atmel-Toolchain braucht die aber alle nicht. Die hat alles dabei, um > vollständige Programme zu erzeugen. Hallo Oliver, Prima, danke für die Antwort. Dann nehme ich mal die utilities auch weg und kopiere nur make.exe in den bin Ordner und sehe ob linken etc. auch funktioniert. Gruss Reiner
Es sind vielleicht außer make.exe noch ein paar andere Kleinigkeiten, die sie bei Atmel weggelassen haben, und die du ggf. kopieren musst. So richtig einleuchtend ist die Auswahl dessen, was sie an Utilities mit reingenommen haben bei Atmel und was nicht, wohl nicht. Auf jeden Fall müsstest du dir separat ein avrdude.exe installieren (das uralte vom 2010er WinAVR zu kopieren, würde ich dir nicht empfehlen).
Jörg W. schrieb: > Es sind vielleicht außer make.exe noch ein paar andere Kleinigkeiten, > die sie bei Atmel weggelassen haben, und die du ggf. kopieren musst. > So richtig einleuchtend ist die Auswahl dessen, was sie an Utilities > mit reingenommen haben bei Atmel und was nicht, wohl nicht. > > Auf jeden Fall müsstest du dir separat ein avrdude.exe installieren > (das uralte vom 2010er WinAVR zu kopieren, würde ich dir nicht > empfehlen). Hallo Jörg, Jetzt kommt endlich die Antwort, auf meine Frage. avrdude brauche ich nicht, da ich ein anderes utility dafür habe. Freut mich wieder mal von Dir zu hören. Damals wohnte ich in Dänemark und wir haben oft wegen der libc und neuen Funktionen miteinander kommuniziert)-: Gruss Reiner
Reiner schrieb: > Damals wohnte ich in Dänemark und wir haben oft wegen der libc und neuen > Funktionen miteinander kommuniziert) Ja, ich kann mich dunkel erinnern.
> Ja, ich kann mich dunkel erinnern.
Ja, darum stehe ich wohl auch noch in Eurer Liste der Copywrite holder
und Entwickler.
Aber schönen Dank für den Hinweis mit der Toolchain.
Gruss Reiner
Reiner schrieb: > Ja, darum stehe ich wohl auch noch in Eurer Liste der Copywrite holder > und Entwickler. Ja, irgendwas ist dabei originär von dir gewesen. Kann sein, dass es inzwischen durch Rewrites mal ersetzt worden ist.
Wozu ist denn das Kopieren / Überschreiben / Löschen notwendig? Soll eine neue Distribution erstellt werden?
Johann L. schrieb: > Wozu ist denn das Kopieren / Überschreiben / Löschen notwendig? Soll > eine neue Distribution erstellt werden? Hallo Johann, Nein, absolut nicht. Ich habe nur gerade einen Rechner neu mit Windows 7 installiert und möchte gerne alle meine alten Projekte erhalten, da der alte Compiler nur noch auf einem virtuellen XP läuft. Gruss Reiner
Jörg W. schrieb: > Ja, irgendwas ist dabei originär von dir gewesen. Kann sein, dass > es inzwischen durch Rewrites mal ersetzt worden ist. Hallo Jörg, Ja die rund 30 Funktionen der string lib und math lib stammten mal von mir. Aber die sind sicher alle neu geschrieben worden )-: Lass uns den Thread schliessen. Reiner
Reiner schrieb: > Hallo Johann, > > Nein, absolut nicht. Ich habe nur gerade einen Rechner neu mit Windows > 7 installiert und möchte gerne alle meine alten Projekte erhalten, da > der alte Compiler nur noch auf einem virtuellen XP läuft. Bei mir lief der alte Compiler zwar einwandfrei unter Win7_64, hat aber einfach erheblich grösseren Code erzeugt, sodass z.B. bestimmte Atmega328-Projekte nicht mehr ins Flash passten. Alles ausser pn u. utils gelöscht, die fertige Toolchain mit gcc-4.9.1 vom Avrstudio7 ausgepackt, und gut war. Keine Ahnung, warum Leute da so'n Problem drin sehen, ich hab' jedenfalls keine damit bislang...
Hallo Jan, Ja, mich haben die Antworten auch verwundert und teilweise amüsiert. Genau das war meine Frage: Alles ausser utils und pn löschen? (So wie in der Bibel: Eure Antwort sei ja oder nein, alles andere ist von Übel):- Auch bei mir funktioniert die von Dir geschilderte Lösung problemlos, aber ich wollte eben sichergehen, ob ich etwas vergessen habe. Mein alter Compiler von 2005 lief unter Win7-64 pro nicht mehr. Im virtuellen XP mode geht es, aber das ist keine Lösung. Die Distribution von 2010 läuft, aber bevor ich ca 50 Projekte umstelle, mòchte ich dann doch die neueste Version der libc, und des erheblich besseren Compilers haben. Gruss Reiner
Reiner schrieb: > die neueste Version der libc Da bin ich leider noch in der Bringeschuld … Naja, OK, wenn du die Atmel-Toolchain nimmst, sie haben wohl auf einer SVN-Version aufgesetzt statt auf dem letzten Release.
Hallo Jörg, ich muss morgen mal nachschauen welche Version die libc der momentanen Atmel Toolchain hat. (Ich habe gerade nur ein Tablet in der Hand) Andererseits ist es schon ein Quantensprung von der 2005 noch selbst kompilierten Version zu der 2015 Version. Daher, lass Dir Zeit. Gruss Reiner
Hallo, Um das Thema abzuschliessen un ohne Interesse an weiteren ideologischen Diskussionen: Falls dies jemanden interessiert, eine neue WinAvr Version ist leicht zu erzeugen, auch wenn man dann den Döner mit Pizzateig isst (s.o.), weil man eben gerne ohne Studio programmiert. 1. Installation von WinAvr20100110. 2. Download der Toolchain von Atmel. 3. Löschen aller Verzeichnisse in WinAvr ausser pn und utils. 4. Kopieren aller Verzeichnisse der Toolchain in das WinAvr Verzeichnis. 5. Umbenennung des Verzeichnisses WinAvr20100110 in WinAvr. 6. Änderung der Pfadeinträge von WinAvr20100110 in WinAvr. Und ja, man kann stattdessen auch /pn und /utils in das Toolchain Verzeichnis kopieren, aber das Ergebnis ist dasselbe. Die ca. 10 Projekte, die ich heute konvertiert, und getestet habe laufen problemlos. Gruss Reiner
> Und ja, man kann stattdessen auch /pn und /utils in das Toolchain > Verzeichnis kopieren, aber das Ergebnis ist dasselbe. Ist aber deutlich einfacher. Noch einfacher wäre es, wie oben schon geschrieben, beide toolchains parallel zu installieren. Oliver
Oliver S. schrieb: >> Und ja, man kann stattdessen auch /pn und /utils in das Toolchain >> Verzeichnis kopieren, aber das Ergebnis ist dasselbe. > > Ist aber deutlich einfacher. Noch einfacher wäre es, wie oben schon > geschrieben, beide toolchains parallel zu installieren. Das neue Windos verweigert wohl die Installation der älteren Version.
Johann L. schrieb: > Das neue Windos verweigert wohl die Installation der älteren Version. Nein, eigentlich nicht. Was nicht geht ist WinAVR in das Verzeichnis C:\Program Files (X86) zu installieren, in das es eigentlich gehört. Make findet dann wohl wegen der Klammern und der Whitespaces die binaries nicht und läuft Amok. Wird WinAVR in C:\ WinAVR installiert geht das. Der Fehler ist aber schon seit Urzeiten bekannt und meines Erachtens der Grund dafür, daß keine Distribution nach 2010 mehr erfolgte. Reiner
Hmm, das einzige Problem was ich mal hatte war das beim Konvertieren alter Studio 4 Projekte in Studio 6 mangels inzwischen nicht mehr vorhandenem WinAVR nicht mehr compiliert werden konnte. Einfache Lösung, mit Studio 6 ein neues Projekt auf machen, den Quelltext im einfachsten Fall per Copy-Paste rüber ziehen, Projekt neu einstellen, fertig. Bestimmt kann man das auch von Hand alles auf die neue Toolchain verbiegen, mit einem frisch erstellten Projekt ist aber auf jeden Fall sauber. Interessant sind dann nur so Fälle wo sich scheinbar grundlos Register und Bit-Namen geändert haben und zum Beispiel noch eine "0" neu mit drin steht obwohl es auch weiterhin nur eine SPI Unit in dem Controller gibt.
Rudolph R. schrieb: > Interessant sind dann nur so Fälle wo sich scheinbar grundlos Register > und Bit-Namen geändert haben und zum Beispiel noch eine "0" neu mit drin > steht obwohl es auch weiterhin nur eine SPI Unit in dem Controller gibt. Hm. Hast du dafür mal ein Beispiel? Oliver
Oliver S. schrieb: > Hm. Hast du dafür mal ein Beispiel? Ich bin nicht 100% sicher, aber das war entweder beim Mega88PA oder Mega164PA, entweder SPI und/oder UART. Naja, einmal kurz auf die Includes der neuen Toolchain ändern, fertig.
Reiner schrieb: > Ich will die letze WinAVR Distribution von 2010 mit der letzten Atmel > Toolchain verheiraten. Beitrag "Re: avr-gcc 4.7 für Atmel Studio 4 Windows"
Also ich benutze die Atmel-Toolchain mit MinGW, CMake und Eclipse. Von MinGW kommt dann das eigentliche Make (mingw32-make) und CMake bastelt ein Eclipse Projekt (kann aber auch andere IDE-Projekte generieren- z.B. CodeBlocks, oder ein "normales" Makefile). Kannst du ja auch mal ausprobieren.
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.