小编sha*_*WWW的帖子

FindPackageHandleStandardArgs 到底做了什么?

我正在尝试为我已安装的软件包编写查找模块。但我在理解 CMake 函数时遇到了困难。

\n\n

这是我的代码片段。

\n\n
find_package(PkgConfig)\npkg_check_modules(PC_zcm QUIET zcm)\n\nfind_path(zcm_INCLUDE_DIR\n        NAMES zcm.h\n        PATHS $ENV{PATH}\n        )\nmark_as_advanced(zcm_FOUND zcm_INCLUDE_DIR)\n\ninclude(FindPackageHandleStandardArgs)\nfind_package_handle_standard_args(zcm DEFAULT_MSG\n        REQUIRED_VARS zcm_INCLUDE_DIR\n        )\n
Run Code Online (Sandbox Code Playgroud)\n\n

find_path()能够找到我的zcm_INCLUDE_DIR就好了:/usr/bin/zcm/usr/local/include

\n\n

但 find_package_handle_standard_args() 给出 \n-- Could NOT find zcm (missing: REQUIRED_VARS)

\n\n

我的目录树如下所示:

\n\n
\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 zcm\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 eventlog.h\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 json\n    \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 json-forwards.h\n    \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 json.h\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 message_tracker.hpp\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 tools\n    \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 IndexerPlugin.hpp\n    \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 TranscoderPlugin.hpp\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 transport\n    \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 generic_serial_transport.h\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 transport.h\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 transport_register.hpp\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 transport_registrar.h\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 url.h\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 util\n    \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 Filter.hpp\n …
Run Code Online (Sandbox Code Playgroud)

cmake cmake-modules

6
推荐指数
1
解决办法
9334
查看次数

标签 统计

cmake ×1

cmake-modules ×1