是否有方法(如命令行参数或CMakeLists.txt中的某些函数)打印提供给cmake调用的所有命令行参数?相当于bash“echo $ @”
我需要这个来调试,为什么从qtcreator调用的cmake找不到我的编译器(msvc12)。检查qtcreator源后,我发现它根据选定的工具包通过cmake参数附加了一些环境。我收到了像
这样的消息未设置CMAKE_CXX_COMPILER
,当我选择“Nmake Desktop Qt MSVC2013 ......”或“Ninja Qt MSVC2013”时。
当我从命令行调用cmake时,它会找到没有其他参数的编译器:
- 使用以下命令检查工作CXX编译器:Visual Studio 12 2013 - 使用以下方法检查工作CXX编译器:Visual Studio 12 2013 - 工作
答案 0 :(得分:0)
我的主要问题是通过安装忍者来解决的。我认为问题不是通过qtcreator调用的cmake找到编译器:
未设置CMAKE_CXX_COMPILER
安装忍者并重新启动qtcreator后,问题就消失了。
答案 1 :(得分:0)
升级Visual Studio 2017之后,我遇到了同样的问题。
由于某种原因,当在Build&Run的cmake配置中将(AD)CMAKE_CXX_COMPILER
添加到Visual Studio编译器的位置时,它应该起作用:
C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe
==>用正确的版本替换版本请不要忘记单击下面的“应用配置更改”。
但是,非常奇怪,因为在构建之后,伪指令运行变为CMake Project was parsed successfully.
,并且不管是否相信,CMAKE_CXX_COMPILER
都消失了!