Gcc CMake如何检查正在工作的编译器?

Gcc CMake如何检查正在工作的编译器?,gcc,compiler-construction,cmake,Gcc,Compiler Construction,Cmake,使用CMake时,我注意到输出消息: --C编译器标识为GNU --CXX编译器标识为GNU --检查C编译器是否工作:/usr/bin/gcc --检查C编译器是否正常工作:/usr/bin/gcc--works --检测C编译器ABI信息 --检测C编译器ABI信息-完成 --检查CXX编译器是否工作:/usr/bin/c++ --检查CXX编译器是否正常工作:/usr/bin/c++--正常工作 --检测CXX编译器ABI信息 --检测CXX编译器ABI信息-完成 我只是好奇CMake如何

使用CMake时,我注意到输出消息:

--C编译器标识为GNU

--CXX编译器标识为GNU

--检查C编译器是否工作:/usr/bin/gcc

--检查C编译器是否正常工作:/usr/bin/gcc--works

--检测C编译器ABI信息

--检测C编译器ABI信息-完成

--检查CXX编译器是否工作:/usr/bin/c++

--检查CXX编译器是否正常工作:/usr/bin/c++--正常工作

--检测CXX编译器ABI信息

--检测CXX编译器ABI信息-完成


我只是好奇CMake如何检查编译器是否工作以及ABI信息。

您可以自己轻松查看。代码位于CMake模块
cmakeDetermineCompiler.CMake
CMakeDetermineCompilerABI.CMake
等中


您可以在
your\u cmake\u install/share/cmake-2.8/modules

中找到这些模块,可能与
autoconf
的功能相同:它首先运行许多命令,特别是使用一些给定的示例输入的C编译。而且
cmake
是免费软件,所以获取它的源代码并研究它吧!这是一个糟糕的答案。“查看源代码”相当于“查看此链接”。如果提问者知道如何查看源代码,我怀疑他们不会问这个问题,假设他们还没有尝试这样做并放弃,当点击这个问题时,我当然没有想到作为一名C程序员是找到答案的必要条件。@Hashim如果问题是关于解决实际问题,具体问题,我可能会尝试解决这个特定的问题。然而,如果OP“只是好奇CMake是如何检查的……”,那么“自己看看这里”是一个完全正确的答案。此外,从CMake本身的源代码来看,它并不是真正的“查看源代码”。这只是字面上看CMake在执行编译器检测时执行的CMake命令。所以我也不认为它需要C语言编程知识。@AngewisnolongerproudofSO你能看到我的问题吗?