我正在使用带有编译器选项 /MP 的 Visual Studio 2013,它不支持预编译头文件。如何在 CMakeLists.txt 中设置“不使用预编译头文件”?
编辑:已解决。
马里奥让我思考,我再次检查了我的 cmakelists,似乎我错过了一个包含(./pch_support.cmake)。抱歉,我没有写这个东西,我只添加了 /MP(多处理器编译),根据 MSDN 文档,它可能会与其他开关(例如预编译头文件)发生冲突并产生乱码输出。最初,由于有时会遇到烦人的错误,我想禁用 pch,这需要重新构建解决方案:
"error C1027: Inconsistent values for /Ym between creation and use of precompiled header"
但到目前为止,似乎将以下几行添加到 cmakelists 有所帮助:
string (REPLACE "/Zm1000" "/Zm200" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
(但我需要更多时间来确定它是否真的是一个解决方案,或者我需要在 pch 和 /MP 之间做出决定。)