Atmel Studio 7 und C++11

#5711096
Lesenswert?

Bei dem Versuch c++ Templates von ARM gcc 5.4.1 auf avr zu portieren 
geschehen "seltsame" dinge ;-)

Ich habe das Atmel Studio 7 auf das neueste upgedatet, das hat 45min 
gedauert aber auch nichts gebracht.

Wenn ich ein praktisch leeres C++ executable Projekt erstelle und 
übersetze funktioniert es problemlos. Für meinen Test brauchte ich aber 
C++11 unterstützung und sobald ich -std=c++11 bei den Optionen eingebe 
bringt die Übersetzung von main.cpp keinen Fehler aber erzeugt kein 
main.o und das mag der Linker natürlich nicht und bringt Fehlermeldung.
Error main.o: No such file or directory  und
Error recipe for target 'GccApplication1.elf' failed

In beiden Fällen sind noch keine Templates im Spiel sondern nur main und 
while(1) sonst nichts.

--version gibt gcc 5.4.0 aus.

Im Compiler Explorer gibt es leider nur avr gcc 4.6.4 und der kann kein 
c++11.

Hat jemand eine Idee was das sein könnte ?
Angehängte Dateien:
#5711117
Lesenswert?

bitteschön wenn es dir hilft ;-)
1
int main(void)
2
{
3
  /* Replace with your application code */
4
  while (1)
5
  {
6
    
7
    
8
  }
9
}

Dieser Code compiliert fehlerfrei ohne die option -std=c++11 und mit der 
Option nicht.

Und wenn ich einen AVR Compiler verwende wird es auch für einen AVR sein 
und der Code enthält nichts Device spezifisches.
Angehängte Dateien:
#5711150
Lesenswert?

René H. schrieb:
> Du hast bereits geschrieben: der Compiler kann kein c++11.
>
> Was erwartest du dann? Resp erwartest du falsch.
>
> Grüsse,
>

Wenn er es nicht könnte würde er mir eine Fehlermeldung für falsche 
Option bringen.

Der AVR gcc vom Compiler Explorer 4.6.4 kann es nicht

Der AVR gcc 5.4.0 vom Atmel Studio sollte es können und um den geht es 
hier.

Der ARM gcc 5.4.1(none) vom Compiler Explorer kann es.
#5711230
Lesenswert?

Mist es war mein Fehler ... ich wollte auch die Version von gcc ausgeben
und habe die Option --version dafür verwendet damit wird aber nicht 
compiliert sondern nur die Version ausgegeben !

Die richtige Option für compilieren und version ausgeben ist: 
-dumpversion

Hier noch ein link zu gcc und c++  standards.
https://gcc.gnu.org/projects/cxx-status.html
Gast #5711262
Lesenswert?

Die richtige Toolchain besorgen:
*******************************
Beitrag "Re: gibts irgendwo eine fertige AVR-GCC Toolchain mit Make fertig.."

Die Toolchain in AtmelStudio installieren:
*****************************************
Beitrag "Re: constexpr in Atmel Studio nicht verfügbar?"

Den richtigen c++ Dialekt wählen:
********************************
Solution Explorer
Project - Properties
Toolchain
AVR/GNU C++compiler-Miscellaneous -std=c++xx  // max= -c++2a
Gast #5778107
Lesenswert?

@ Hans-Georg L
**************
Unter Win7 - MSYS2:

Ich habe für eine lokale Kopie von Compiler-Explorer noch keine Lösung. 
Hinweise gerne willkommen.
----------------------------------------------------------------------

Unter Linux Mint18.2/X86_64:

Die Toolchain avr-gcc-8.3.0-x64-linux.tar.bz2 von
*************************************************
http://blog.zakkemble.net/avr-gcc-builds/

entpacken.

In /home/USER/bin das Unterverzeichnis mit der Toolchain einfügen und 
den Linux-PATH entsprechend anpassen.

Die Anleitung: C++ Weekly - Ep 83 - Installing Compiler Explorer
****************************************************************
https://www.youtube.com/watch?v=I2cKVRzJhS0

anwenden und dabei in compiler-explorer/etc/config/c++.local.properties 
den Pfad zum avr-gcc-8.3.0 eintragen.
Angehängte Dateien:

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