gpt4 book ai didi

windows - 我怎么知道 find_package() 在 cmake 中是否成功?

转载 作者:可可西里 更新时间:2023-11-01 10:53:16 26 4
gpt4 key购买 nike

find_package(GTK)

如何让它输出一些东西,以便我知道它是否找到了东西?

平台:windows XP

最佳答案

您可以使用 message命令如:

FIND_PACKAGE(GTK)IF (${GTK_FOUND})   MESSAGE(STATUS "Found GTK.")ELSE (${GTK_FOUND})   MESSAGE(STATUS "Could not locate GTK.")ENDIF (${GTK_FOUND})

或者,如果您希望它在未找到 GTK 时中止:

FIND_PACKAGE(GTK)IF (${GTK_FOUND})   MESSAGE(STATUS "Found GTK.")ELSE (${GTK_FOUND})   MESSAGE(FATAL_ERROR "Could not locate GTK.")ENDIF (${GTK_FOUND})

请注意,如果您执行后者,那么您只需将“REQUIRED”标志与 FIND_PACKAGE 一起使用,因为指定“REQUIRED”标志可确保在未找到时失败并报错:

FIND_PACKAGE(GTK REQUIRED)

如果未找到 GTK,上述命令将导致 CMake 中止并打印错误消息。您可能还对 FIND_PACKAGE 的文档感兴趣来自 CMake Manual .此外,应该注意 FIND_PACKAGE(XYZ) 实际上调用了 CMake 模块 FindXYZ,因此每个具有相应 FIND_PACKAGE 的包都有自己的 CMake 模块来实现查找操作...因为 CMake 仍然有点新,其中一些查找模块是没有正确实现...根据您在下面的评论,似乎 FindGTK 没有正确实现(因为如果它不存在,使用 REQUIRED 标志应该会导致它因 fatal error 而中止,但不会在你的情况下似乎是这样做的)。

关于windows - 我怎么知道 find_package() 在 cmake 中是否成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2711654/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com