我是CMake的新手,我想知道LINUX环境中的C ++ / C项目如何让CMake在gcc和g ++之间选择编译器。更具体地说,我的问题如下:
答案 0 :(得分:15)
很快,两者都是。
你可以用几乎所有东西进行破坏。有标记和变量绑定语言的扩展;然后是语言到定义工具集和构建目标的编译器选项/可执行文件。
检查以下文档链接。这些是一些令人愉快的简短读物。
注意:维基可能已经过时,但如果出现重要和教育问题,它应该保留。
PS。有很多相关的选择。对于较长时间的阅读,您可以查看以下文档部分:Properties on Source Files和Variables for Languages。 2.和3.来自这些部分。
答案 1 :(得分:12)
据我所知,CMake只看文件扩展名。因此,如果您将.c文件重命名为.cpp,据我所知,它将使用g ++进行编译。
很容易改变这种行为。 CMake使用环境变量来查看要使用的编译器。如果您想将编译器更改为例如clang和clang ++,你可以做到
导出CC = clang export CXX = clang ++
在运行cmake之前。