cmake在clang try_compile

时间:2016-09-19 21:16:00

标签: c cmake clang

由于我尝试让cmake在这里使用clang和gcc,我遇到了我认为最奇怪的事情。

我有一个小小的hello world-ish程序,可以在ubuntu中使用cngke中的clang完美编译,设置速度非常快,尝试它只是一个有趣的事情。
现在在Windows端我有更多的问题,我做了安装MinGW w64的常规订单,然后clang(也是64位)和最后cmake(由于学校项目,VS 15早先被打开)。我设法弄乱了不同的cmake事情,直到我几乎得到它编译,清除构建目录并在我的构建文件夹中使用cmake .. -G"MinGW Makefiles"来尝试完成编译。我得到的是错误告诉我编译失败了,不久之后我才弄明白为什么;
cmake的try_compile尝试将像/nologo这样的MSVC样式标志传递给clang,后者认为这些标志是目录。

我找不到任何强制旗帜看起来像常规-flag的方法 是否有一些隐藏的cmake变量可以设置,或者我只是搞砸了在这个特定的配置中进行编译?

1 个答案:

答案 0 :(得分:2)

将-fmsc-version = 0添加到标志中,CMake不会假设它正在模拟MSVC。

已选中here