Câu trả lời khá đơn giản.
Trình tạo cdt eclipse bỏ qua các định nghĩa được thêm bằng các định nghĩa bổ sung (...) khi phân tích cú pháp các ký hiệu. Thay vào đó, nó sử dụng CMAKE_CXX_COMPILER_ARG1. Vì vậy, tất cả các bạn phải làm là: Thêm -DCMAKE_CXX_COMPILER_ARG1 = -std = C++ 11 khi gọi cmake
file dự án Tạo từ dòng lệnh:
cmake ../../src -G"Eclipse CDT4 - MinGW Makefiles" -DCMAKE_ECLIPSE_VERSION=4.2 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER_ARG1=-std=c++11
dự án Tạo từ cmake gui:
- Select source and build directory.
- now BEFORE hitting configure or generate. Press "Add Entry" and add a new entry. Name:CMAKE_CXX_COMPILER_ARG1 Type:STRING Value:-std=c++11
- press Generate and create the Eclipse project
Điều quan trọng là đặt trước CMAKE_CXX_COMPILER_ARG1 trước khi nhấn định cấu hình hoặc tạo lần đầu tiên!
Đó là điều đó. Dự án sẽ được tạo ra với các biểu tượng chính xác. lập chỉ mục, đánh dấu cú pháp và tự động hoàn thành sẽ hoạt động như dự định mà không thay đổi bất kỳ cài đặt dự án nào bằng tay.
Nó không làm việc cho tôi. Tôi đang sử dụng cmake 3.5.1 và eclipse Kepler.I vẫn phải làm những gì các điểm thứ hai ở đây đề nghị để làm (https://stackoverflow.com/a/14381512/1971003) - Bất cứ điều gì tôi đang thiếu ở đây? Cảm ơn !! –