CheckOBJCXXSourceRuns

在版本 3.16 中添加。

检查是否给定的 Objective-C++ 资源能编译并链接到可执行文件中,随后可以运行。

check_objcxx_source_runs
check_objcxx_source_runs(<code> <resultVar>)

检查一次是否在 <code> 中提供的资源能构建、作为一个可执行文件链接,然后运行。该 <code> 必须至少包含一个 main() 函数。

结果存储在由 <resultVar> 指定的内部缓存变量中。布尔值 true 表示构建和运行成功。布尔值 false 表示构建或运行失败,例如空字符串或错误消息。

同时参考 check_source_runs(),以获得更通用的命令语法。

在调用 check_objcxx_source_runs() 之前设置以下任何变量,都可以影响编译和链接命令

CMAKE_REQUIRED_FLAGS

传递给编译器的附加标志字符串。字符串必须以空格分隔——;-list 不可行。在 CMAKE_REQUIRED_FLAGS 的内容之前,CMAKE_<LANG>_FLAGS 及其关联的特定于配置的变量的内容会自动添加到编译器命令中。

CMAKE_REQUIRED_DEFINITIONS

形式为 -DFOO-DFOO=bar;-list 编译器定义。还会自动添加由 <resultVar> 指定的名称的定义。

CMAKE_REQUIRED_INCLUDES

传递给编译器的头搜索路径 ;-list。这些将成为唯一使用的头搜索路径——INCLUDE_DIRECTORIES 目录属性的内容将被忽略。

CMAKE_REQUIRED_LINK_OPTIONS

在版本 3.14 中添加。

要添加到链接命令的选项 ;-list(请参阅 try_compile() 了解更多详细信息)。

CMAKE_REQUIRED_LIBRARIES

要添加到链接命令的库的;-list。这些可能是系统库或导入目标(更多详细信息请参阅try_compile())。

CMAKE_REQUIRED_LINK_DIRECTORIES

Add in version 3.31.

要传递给链接器的库搜索路径的;-list(有关更多详细信息,请参阅try_compile())。

CMAKE_REQUIRED_QUIET

Add in version 3.1.

如果此变量计算为布尔真值,则将抑制与此检查关联的所有状态消息。