【问题标题】:Using CGAL 5.1 with third party Libraries将 CGAL 5.1 与第三方库一起使用
【发布时间】:2021-01-11 21:12:09
【问题描述】:

我正在尝试编译 CGAL 示例目录中的示例 read_las_example.cpp Point_set_processing_3

但是cmake 命令遇到错误:

include could not find load file:

    CGAL_LASLIB_support

这里有一些关于将 CGAL 与第三方库一起使用的说明:https://doc.cgal.org/latest/Manual/thirdparty.html#thirdpartyLASlib 但我无法遵循它。特别是我不明白如何做到这一点 - “可执行文件应该与 CGAL_LASLIB_support.cmake 中提供的 CMake 导入目标 CGAL::LASLIB_support 链接”。如果有帮助,CGAL_LASLIB_support.cmake 文件位于目录 cgal/5.1/lib/cmake/CGAL

任何人都可以帮助了解如何将 CGAL 与第三方库一起使用,尤其是 LASlib。

【问题讨论】:

    标签: cmake cgal


    【解决方案1】:

    这意味着您需要包含CGAL_LASLIB_support 并调用target_link_libraries(your_exe_name CGAL::LASLIB_support) 它已在示例的 CmakeLists.txt 中使用,您应该检查您使用的 CGAL 是否真的是 5.1,而不是缓存在系统某处的另一个版本。目标CGAL::LASLIB_support 只存在于 5.1 之后,所以错误似乎表明您使用的 CGAL 版本不是正确的。

    【讨论】:

    • 谢谢。作为 CMake 的新手,我不知道如何使用 CGAL_LASLIB_support。为了完成,我不得不将 CGAL_LASLIB_support 的目录添加到 CMake 的模块路径中。我通过在 CMakeLists.txt 中添加以下行来实现这一点:list(APPEND CMAKE_MODULE_PATH "")。我确信在调用 CMake 时也可以在命令行中执行此操作,但我还不知道方法。你呢?
    • 我很惊讶它还不是简单的 CGAL_DIR 的情况
    • 是的,我想知道我是否在安装过程中错过了一些设置。此外,如果它对您有帮助,LAS 工具附带的 LASlib 将无法正常工作。我不得不使用 CGAL 提供的 LASlib fork。
    • 是的,这是 CGAL 文档中指定的内容。对于模块路径,你一定做错了什么,因为它已经由 CGAL 的 CMake 脚本设置。您不必出于任何原因编辑任何现有的 CMakeLists。
    • 我明白了。我实际上已经将版本从 5.0 更新到了 5.1。也许这就是原因。但无论如何,我现在更清楚地了解了一些事情,这很好。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-12
    • 1970-01-01
    • 1970-01-01
    • 2020-11-27
    • 1970-01-01
    • 2021-12-01
    相关资源
    最近更新 更多