PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : avr-g++: error: missing filename after '-o'



inka
09.03.2016, 17:15
hallo allerseits,

quasi aus heiterem himmel kommt (nachdem ich einer aufforderung zu aktualisierung der libs gefolgt bin) die o.g. meldung wenn ich in der IDE 1.6.6. versuche (egal-welchen) sketch zu kompilieren...

könnte mir bitte jemand erklären was das bedeutet und wie ich es wieder loswerde?

shedepe
09.03.2016, 18:18
Aus der Doku zu avr-g++

-o file Place output in file file. This applies regardless to whatever sort of output is being produced, whether it be an executable file, an object file, an assembler file or preprocessed C code. If -o is not specified, the default is to put an executable file in a.out, the object file for source.suffix in source.o, its assembler file in source.s, a precompiled header file in source.suffix.gch, and all preprocessed C source on standard output.


Schau mal ob du irgendwo in der Arduino IDE den Compiler aufruf konfigurieren kannst.

inka
09.03.2016, 19:06
hi shedepe,

danke für den tipp, hab da aber nichts brauchbares gefunden...

habe jetzt die neueste version 1.6.8 installiert und den neuen lib-ordner durch den ursprünglichen aus der 1.6.6 ersetzt - es geht wieder alles (ich hoffe es zumindest)...

ein komisches gefühl bleibt...

Rabenauge
11.03.2016, 10:47
Halt dich mit den Updates besser etwas zurück- diese Funktion ist der grösste Müll überhaupt.
Oft gibt es nämlich völlig verschiedene Bibliotheken für bestimmte Geräte-und manche funktionieren nicht mit jedem Gerät (meine Echtzeituhr ist so ein Kandidat, die meisten Libs unterstützen nur die grottige Ds1302 richtig), da suchst du dir mühsam ne funktionierende Bibliothek, und dann kräht die IDE nach nem Update -und vergeigt alles wieder.
LCD's sind auch so was- da laufen längst nicht alle mit den Standard-Lib's. Und angepasste verschwinden dank der Update-Funktion wieder.
Sicher kann man das irgendwo entsprechend einrichten, aber den Humbug braucht wirklich keiner so richtig...nötigenfalls ne Bibliothek manuell updaten ist so schwer auch nicht.
Keine Ahnung, was die Entwickler geraucht haben, als ihnen diese "glorreiche" Idee kam (die 1.05 hatte die nicht)....bei Arduino kann praktisch jeder ungeprüft munter Bibliotheken hinwerfen, und alle fressen die.
Da ist sowas eindeutig der falsche Weg.

inka
11.03.2016, 11:04
gut zu wissen, nur die aufforderung zum update der lib's kommt ja penetrant immer wieder - bis man sich halt breitschlagen lässt. Wie stelle ichs ab?

Rabenauge
12.03.2016, 09:56
Im Arduino-Ordner (bei Linux home/.arduino15) gibt es die Datei perferences.txt.
Dort gibts ne Zeile update.check=true.
Die stellst du auf false und Ruhe ist. Wichtig: die Datei sollte man nur bearbeiten, wenn die IDE _nicht_ läuft (teilweise wird die beim schliessen wieder überschrieben).
Auf anderen Systemen kannst du die Datei ohne langes suchen über die IDE erreichen, und zwar über Datei-Einstellungen. Dort ist dann ein Link auf die Datei, aber auch dort, die Datei erst bearbeiten, wenn die IDE wieder geschlossen ist.