How to enable C++11/C++0x support in Eclipse CDT?

后端 未结 17 1518
说谎
说谎 2020-11-22 00:13

Eclipse 3.7.1 CDT 1.4.1 GCC 4.6.2

This is an example of a piece of C++11 code:

auto text = std::unique_ptr(new char[len]);
17条回答
  •  陌清茗
    陌清茗 (楼主)
    2020-11-22 00:44

    Instruction For Eclipse CDT 4.4 Luna and 4.5 Mars

    First, before creating project, configure Eclipse syntax parser:

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

    in the text box entitled Command to get compiler specs append -std=c++11

    Now you can create project, configuration depends on what kind of project you created:

    For project created as: File -> New -> Project -> C/C++ -> C++ Project

    Right click on created project and open

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

    Put -std=c++11 into text box entitled other dialect flags or select ISO C++11 from the Language standard drop down.

    For CMake project

    Generate eclipse project files (inside your project)

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

    Then import generated directory to eclipse as standard eclipse project. Right click project and open

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

    enable CDT GCC Build-in Compiler Settings and move it higher than Contributed PathEntry Containers (This is important)

    Last Common Step

    recompile, regenerate Project ->C/C++ Index and restart Eclipse.

提交回复
热议问题