2016-05-18 14 views
-4

Die G ++ Compiler kompiliert zeigt die folgenden Fehler, wenn ich zu kompilieren versuchen:Fehler „is_enum nicht in diesem Bereich erklärt“, wenn ich mein WxWidgets Programm

C:\wx\include\wx\strvararg.h|350|error: 'is_enum' in namespace 'std' does not name a template type| 
C:\wx\include\wx\strvararg.h|354|error: 'is_enum' was not declared in this scope| 
C:\wx\include\wx\strvararg.h|354|error: template argument 1 is invalid| 

I Code verwenden :: Blöcke für diese, mit eine nicht-monolithische DLL-Erstellung von wxWidgets.

Danke für jede Hilfe!

+5

Klingt, als ob Sie C++ 11 nicht aktiviert haben. – Brian

+0

Ausnahmen werden ausgelöst. Übersetzungsfehler werden gedruckt. – EJP

+0

Wie würde ich C++ 11 aktivieren? – jaw2233

Antwort

1

Wie Brian bereits angedeutet hat, sollten Sie C++ 11 aktivieren. Es gibt zwei Möglichkeiten, dies zu tun, wie Sie sehen können What are the differences between -std=c++11 and -std=gnu++11?.

Wie ich mich erinnere, habe ich beim Kompilieren der gesamten wxWidgets-Bibliothek -std = gnu ++ 11 verwendet und hatte keine Probleme.

+0

Wie würde ich -std = gnu ++ 11 zum Befehl zum Kompilieren von wxwidgets mit mingw hinzufügen? – jaw2233

+0

http://stackoverflow.com/questions/27285706/trouble-using-wxwidgets-3-0-2-library-under-mingw-64 – macroland

1

einfach hinzufügen Kommentar macroland:

Sie berücksichtigen sollten 5.2+ auf gcc Version zu aktualisieren. Diese Version (en) hat eine vollständige Reihe von C++ 11 Funktionen, während frühere Versionen sie teilweise haben.

Verwandte Themen