Ich habe Code geschrieben mit den C++ 11 Standards, und unsere g ++ Version ist 4.4.6, so weit ich das sagen kann, C++ 11 sollte unterstützt werden (ab 4.3).-std = C++ 11 Flag nicht erkannt in G 4.4.6
jedoch beim Versuch mit den Flaggen "-std = C++ 11 -std = Gnu ++ 11" zu kompilieren, erhalte ich Wiederholungen der Fehler
cc1plus: error: unrecognized command line option "-std=c++11"
cc1plus: error: unrecognized command line option "-std=gnu++11"
Kompilieren mit -std = C++ 0x erzeugt Fehler wie
DeviceInfo.cpp:22: error: expected initializer before ‘:’ token
diese Codezeile entsprechen:
for (cl::Platform& plat : platforms)
Ist das ein C++ 11 spezifische Bits von Syntax ? (Es sieht nicht wie es mir, aber alle dieser Code gegeben wurde, als ein Beispiel, so sollte mit dem Compiler bereitgestellt arbeiten.
Jede Hilfe?
Sie benötigen GCC> = 4.7, um das Flag "C++ 11" zu erhalten. 4.4 ist zu alt, Sie werden den Bereich nicht für AFAIK bekommen, auch nicht mit -std = C++ 0x. Bitte lesen Sie zumindest die Manpage für den Compiler, dort sind die unterstützten Optionen aufgelistet. – Mat