我正在尝试设置Qt以使用VC2017编译器。它会自动检测所有东西,但是我总是收到一个关于我的工具包设置的警告(如下面屏幕截图中的工具提示所示),上面写着CMake configuration has a path to a C/C++ compiler set that does not match the compiler path configured in the tool chain of the kit.
我将CMake配置更改为以下值:
CMAKE_CXX_COMPILER:STRING=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\bin\HostX86\x64\cl.exe
CMAKE_C_COMPILER:STRING=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\bin\HostX86\x64\cl.exe
CMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
QT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}但什么都没变。这是一张截图:

Compilers选项卡的屏幕截图:

任何帮助都将不胜感激。谢谢!
发布于 2017-05-29 22:01:23
与其对CMake配置中的编译器路径进行硬编码,不如使用Qt为您提供的变量,然后确保您的工具包从编译器下拉框中选择要使用的编译器。您的CMake配置应该如下所示:
CMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}
CMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
QT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
CMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}警告是针对该工具包本身,因此它独立于任何您试图使用它的构建。如果在将CMake配置设置为上述之后警告仍然存在,则可能只是Qt没有识别编译器可执行文件的指定方式。
如果您在此过程中进行了一些实验,并且有构建错误,请尝试清除构建目录并再次运行CMake。当您第一次在一个空的build目录中运行CMake时,它应该记录它试图使用的编译器的信息。如果它与您预期的匹配,并且CMake运行成功完成,则可以安全地忽略该警告(它不会阻止该工具包的使用)。您还可以通过在构建树的顶部查找CMAKE_CXX_COMPILER和CMAKE_C_COMPILER文件中的CMakeCache.txt条目来确认正在使用的编译器。
https://stackoverflow.com/questions/44250762
复制相似问题