VS 2017 + cmake + ninja + mingw
我正在使用VS 2017的新“打开文件夹”功能,通过CmakeSettings.json自动创建cmake。
代码是用C11编写的,所以我需要用gcc(来自mingw-64)编译它。 我创建了一个新的cmake配置,如下所示:
{
"name": "GNU-Debug",
"generator": "Ninja",
"configurationType": "Debug",
"inheritEnvironments": [ "msvc_x64_x64" ],
"buildRoot": "${env.USERPROFILE}CMakeBuilds${workspaceHash}build${name}",
"installRoot": "${env.USERPROFILE}CMakeBuilds${workspaceHash}install${name}",
"variables": [
{
"name": "CMAKE_MAKE_PROGRAM",
"value": "C:msys64mingw64binmingw32-make.exe"
},
{
"name": "CMAKE_C_COMPILER",
"value": "C:msys64mingw64bingcc.exe"
},
{
"name": "CMAKE_CXX_COMPILER",
"value": "C:msys64mingw64bing++.exe"
}
]
}
输出如下所示:
检测到的Ninja版本(GNU Make 4.2.1针对x86_64-w64-mingw32构建)版权所有(C)1988-2016 Free Software Foundation,Inc.许可证GPLv3 +:GNU GPL版本3或更高版本http://gnu.org/licenses/ gpl.html这是免费软件:您可以自由更改和重新分配它,在法律允许的范围内没有任何担保)比CMake(1.3)要求的忍者版本少。
这是非常奇怪的,考虑到忍者的检测版本应该是一个数字。 VS'忍者和MinGW忍者都是最新的(1.8.2)。
是否有任何其他方式让MinGW + CMake在VS 2017中工作?
原来我不得不重新启动VS ...一切都按预期工作。
链接地址: http://www.djcxy.com/p/53397.html