【问题标题】:using vtk with openVR将 vtk 与 openVR 一起使用
【发布时间】:2017-06-28 09:55:29
【问题描述】:

我正在尝试在 HTC Vive 设备上使用带有 OpenVR 的 VTK 7.1.1。我已经使用 CMake 3.3.0 配置了 VTK,并使用 Visual Studio 2012 构建了它的解决方案。但是当我尝试通过 CMake 为 VTK-7.1.1/Rendering/OpenVR 中的示例文件生成解决方案时,它给出了以下错误:

找不到“OpenVR”提供的具有以下任何名称的包配置文件:

OpenVRConfig.cmake
openvr-config.cmake

除此之外,CMake 坚持要手动设置 openvr_dir 路径,但不接受指向具有所需内容的 openvr_master 文件夹的路径。

我该如何解决这个问题?

【问题讨论】:

    标签: cmake sdl-2 vtk htc-vive openvr


    【解决方案1】:

    在启用 OpenVR 支持后第一次运行 cmake-gui 时,通常会看到一条消息抱怨 OpenVRConfig.cmake 未找到。应该会出现一个新的缓存变量OPENVR_ROOT_DIR。将其指向包含OpenVR SDK 的目录。我不知道openvr_dir 来自哪里。您可以看到 here (FindOpenVR.cmake in VTK7.1.1) CMake 如何使用 OPENVR_ROOT_DIR 查找库并包含相对于 SDK 根目录的路径。

    另外,cmake“不接受指向openvr_master文件夹的路径”是什么意思?它是否继续抱怨缺少 OpenVR?将OPENVR_ROOT_DIR 重置为NOTFOUND?还有什么?

    【讨论】:

    • 是的,我在启用 OpenVR 支持后设置了 OPENVR_ROOT_DIR、OPENVR_HEADERS_ROOT_DIR、OPENVR_INCLUDE_DIR、OPENVR_LIBRARY 路径。我还按照你的建议浏览了 FindOpenVR.cmake,但一切似乎都在那里..
    • CMake 继续抱怨 CMakeLists.txt:6 (find_package) 处的 CMake 错误:通过在 CMAKE_MODULE_PATH 中未提供“FindOpenVR.cmake”,该项目要求 CMake 查找“OpenVR”提供的包配置文件,但 CMake 没有找到。找不到由“OpenVR”提供的具有以下任何名称的软件包配置文件: OpenVRConfig.cmake openvr-config.cmake 将“OpenVR”的安装前缀添加到 CMAKE_PREFIX_PATH 或将“OpenVR_DIR”设置为包含上述之一的目录文件。
    • @anushakamath 尝试在 VTK 的 FindOpenVR.cmake 的第 67 行添加 message("Looking for library in ${_libdir}, root dirs ${_root_dirs}")。库目录是否与您的架构匹配并包含 openvr_api 共享库/dll?报告的根目录列表中是否包含headers/openvr_driver.h 文件?
    • 感谢@Drone2537 的建议!! root dirs 报告指向具有 openvr_driver.h 的文件夹。但是 _libdir 未设置,因此它的值未显示在您建议的语句中。我在第一次启用 OpenVR 支持后将 OPENVR_LIBRARY 设置为指向 openvr_api .lib。你能请告诉我可能出了什么问题?
    • FindOpenVR.cmake中的变量OPENVR_LIBRARY_TEMP保存了指向openvr_api.lib的路径
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-06
    • 1970-01-01
    • 2017-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多