cmake 使用CPM Package Manager添加boost/dynamic_bitset

vs3odd8k  于 2024-01-09  发布在  其他
关注(0)|答案(1)|浏览(299)

我已经为此挣扎了一段时间。我使用CPM包管理器从github为我的项目拉库。我更喜欢这种方式,而不是其他链接方法。我也尝试了gh:boostorg/dynamic_bitset,但这也给了我问题。我能够让cmake为下面的cMakeList生成。
标题#include <boost/dynamic_bitset.hpp>用紫色下划线(我使用Visual Studio),“无法打开源文件'boost/dynamic_bitset. hpp'”

  1. cmake_minimum_required( VERSION 3.5 )
  2. find_package(Git)
  3. include(get_cpm.cmake)
  4. set(SFML_BUILD_EXAMPLES OFF)
  5. set(BUILD_SHARED_LIBS OFF)
  6. set(SFML_DIR "${SFML_SOURCE_DIR}")
  7. set(TGUI_BACKEND "SFML_GRAPHICS")
  8. CPMAddPackage("gh:skypjack/entt#v3.10.1")
  9. CPMAddPackage("gh:SFML/SFML#2.6.x")
  10. CPMAddPackage("gh:texus/[email protected]")
  11. CPMAddPackage("gh:nlohmann/[email protected]")
  12. CPMAddPackage("gh:boostorg/boost#boost-1.83.0")
  13. project( Eridanus )
  14. find_package( OpenGL REQUIRED )
  15. include_directories( ${OPENGL_INCLUDE_DIRS} )
  16. get_filename_component(PARENT_DIR ../ ABSOLUTE)
  17. include_directories(
  18.     ${PROJECT_SOURCE_DIR}
  19.     "${PARENT_DIR}/Eridanus4x/headers"
  20.     "${PARENT_DIR}/Eridanus4x"
  21.     "${PARENT_DIR}/Eridanus4x/SelbaWard"
  22.     )
  23. add_executable(${CMAKE_PROJECT_NAME}
  24.     main.cpp
  25.     game.cpp
  26. .... etc.
  27. target_link_libraries(${PROJECT_NAME} PRIVATE sfml-graphics sfml-window sfml-system EnTT::EnTT TGUI::TGUI nlohmann_json::nlohmann_json Boost::dynamic_bitset)
  28. option(BUILD_EXAMPLES "Build examples" OFF)

字符串

xlpyo6sf

xlpyo6sf1#

奇怪的是,它不会像CPM通常允许的那样工作,用下面的一行替换了用于boost的CPMAddPackage行。CPMAddPackage(NAME Boost URL“https://github.com/boostorg/boost/releases/download/boost-1.83.0/boost-1.83.0.tar.xz“)
来源:https://github.com/cpm-cmake/CPM.cmake/issues/501

相关问题