大家好,我发布了我在 ubuntu 16.04 lts 中遇到的错误。编译时

问题描述 投票:0回答:1

发出命令 cmake ..后出现此错误..

地理库已安装1.45-2 cmake 版本 - 3.5 增强版 - 1.75


发现Boost 1.75。

找到Boost组件:

日期_时间

发现Boost 1.75。

找到Boost组件:

系统;程序选项

-- 地理图书馆:

CMake 错误位于 /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148(消息):

找不到 GeographicLib(缺少:GeographicLib_INCLUDE_DIR GeographicLib_LIBRARY)(要求版本至少为“1.45”)

调用堆栈(最近调用在前):

/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388(_FPHSA_FAILURE_MESSAGE)

cmake/FindGeographicLib.cmake:27(find_package_handle_standard_args) CMakeLists.txt:63(find_package)


这个错误应该怎么办..?

cmake ubuntu-16.04 cmake-modules geographic-lib
1个回答
0
投票

就是这个bug造成的。 https://bugs.launchpad.net/ubuntu/+source/geographiclib/+bug/1805173

您可以使用此 CMake 帮助程序,或从中窃取补丁(它已获得 MIT 许可)。 https://github.com/Ryanf55/geographiclib_cmake_module/pull/1

缺点是你需要添加这行CMake:

  list(APPEND CMAKE_MODULE_PATH /usr/share/cmake/geographiclib)

然后你就可以在Ubuntu上找到GeographicLib了。 如果目标不存在,我建议添加一个目标,如下所示:

if(NOT TARGET GeographicLib::GeographicLib)
  add_library(GeographicLib::GeographicLib UNKNOWN IMPORTED)
  set_target_properties(GeographicLib::GeographicLib PROPERTIES
    IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
    IMPORTED_LOCATION "${GeographicLib_LIBRARIES}"
    INTERFACE_INCLUDE_DIRECTORIES "${GeographicLib_INCLUDE_DIR}"
  )
endif()
© www.soinside.com 2019 - 2024. All rights reserved.