Come abilitare il supporto C++11/C++0x in Eclipse CDT?

Come abilitare il supporto C++11/C++0x in Eclipse CDT?

Ho trovato questo articolo nel forum Eclipse, ho appena seguito questi passaggi e funziona per me. Sto usando Eclipse Indigo 20110615-0604 su Windows con una configurazione Cygwin.

  • Crea un nuovo progetto C++
  • Opzioni predefinite per tutto
  • Una volta creato, fai clic con il pulsante destro del mouse sul progetto e vai su "Proprietà"
  • Build C/C++ -> Impostazioni -> Impostazioni strumento -> Compilatore C++ GCC -> Varie -> Altri flag. Inserisci -std=c++0x (o per la versione più recente del compilatore -std=c++11 alla fine . ... invece del compilatore GCC C++ ho anche il compilatore Cygwin
  • C/C++ Generale -> Percorsi e simboli -> Simboli -> GNU C++. Fai clic su "Aggiungi..." e incolla __GXX_EXPERIMENTAL_CXX0X__ (assicurati di aggiungere e anteporre due caratteri di sottolineatura) in "Nome" e lasciare vuoto "Valore".
  • Premi Applica, fai tutto ciò che ti viene chiesto, quindi premi OK.

C'è una descrizione di questo anche nelle FAQ di Eclipse ora:FAQ di Eclipse/Caratteristiche C++11.

Impostazione immagine Eclipse


Istruzioni per Eclipse CDT 4.4 Luna e 4.5 Mars

In primo luogo, prima di creare il progetto, configura il parser della sintassi di Eclipse:

Window -> Preferences -> C/C++ -> Build -> Settings -> Discovery -> CDT GCC Build-in Compiler Settings

nella casella di testo intitolata Command to get compiler specs aggiungi -std=c++11

Ora puoi creare un progetto, la configurazione dipende dal tipo di progetto che hai creato:

Per il progetto creato come:File -> Nuovo -> Progetto -> C/C++ -> Progetto C++

Fare clic con il tasto destro del mouse sul progetto creato e aprire

Properties -> C/C++ Build -> Settings -> Tool Settings -> GCC C++ Compiler -> Dialect

Inserisci -std=c++11 nella casella di testo intitolata other dialect flags oppure seleziona ISO C++11 dal Language standard discesa.

Per il progetto CMake

Genera file di progetto Eclipse (all'interno del tuo progetto)

mkdir build
cd build
cmake -G"Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug ..

Quindi importa la directory generata in eclipse come progetto standard di eclipse. Fai clic con il pulsante destro del mouse sul progetto e apri

Properties -> C/C++ General -> Preprocessor Include Paths, Marcos etc. -> Providers

abilita CDT GCC Build-in Compiler Settings e spostalo più in alto di Contributed PathEntry Containers (Questo è importante)

Ultimo passaggio comune

ricompilare, rigenerare Project ->C/C++ Index e riavvia Eclipse.


Aggiornamento 2016:

A partire da gcc 6 (modifiche), il dialetto C++ predefinito è C++14. Ciò significa che, a meno che tu non abbia esplicitamente bisogno di un dialetto più nuovo o più vecchio di, non devi più fare nulla con Eclipse.

Per Luna e Marte

Questa sezione del wiki della comunità incorpora la risposta di Trismegistos;

1. Prima di creare il progetto, configura il parser della sintassi di Eclipse:

Finestra -> Preferenze -> C/C++ -> Build -> Impostazioni -> Rilevamento -> Impostazioni del compilatore integrato CDT GCC

nella casella di testo intitolata Comando per ottenere le specifiche del compilatore aggiungi -std=c++14 2. Crea progetto, la configurazione dipende dal tipo di progetto che hai creato:

Per il progetto creato come:File -> Nuovo -> Progetto -> C/C++ -> Progetto C++

Fare clic con il tasto destro del mouse sul progetto creato e aprire

Proprietà -> Compilazione C/C++ -> Impostazioni -> Impostazioni strumento -> Compilatore C++ GCC -> Dialetto

Inserisci -std=c++14 nella casella di testo intitolata altri flag dialettali o seleziona ISO C++11 dal menu a discesa Standard della lingua.

Ora c'è un nuovo modo per risolvere questo problema senza l'hack GXX_EXPERIMENTAL.

Per le versioni più recenti :(Attualmente Giunone e Keplero Luna ):

Nelle versioni più recenti di Juno le impostazioni si trovano in Project properties -> C/C++ General -> Preprocessor Include Paths, Macros etc. -> tab Providers -> CDT GCC Builtin Compiler Settings () .

Versioni precedenti 2012/2013:

  1. In C/C++ Build (nelle impostazioni del progetto), trova Preprocessor Include Percorso e vai alla scheda Provider . Deseleziona tutto tranne le impostazioni del compilatore integrato CDT GCC. Quindi deseleziona le voci delle impostazioni di condivisione ... . Aggiungi l'opzione -std=c++11 alla casella di testo chiamata Comando per ottenere le specifiche del compilatore.

  2. Vai a percorsi e simboli. In Simboli, fai clic su ripristina le impostazioni predefinite , quindi applicare.

Note:

Eclipse è esigente nel premere Applica, devi farlo ogni volta che esci da una scheda delle impostazioni.

[Autopromozione]:ho scritto le mie istruzioni più dettagliate sulla base di quanto sopra.http://scrupulousabstractions.tumblr.com/post/36441490955/eclipse-mingw-builds

Grazie all'utente Nobody su https://stackoverflow.com/a/13635080/1149664