Skip to content

szn409/nly_upstream

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 

Repository files navigation

README

第三方库列表

说明 target
googletest / GTest::gtest_main
abseil-cpp / absl::strings
absl::base
...
protobuf 此库依赖 abseil-cpp protobuf::libprotobuf
protobuf::libprotobuf-lite
protobuf::libprotoc
...
boost 当前用的 boost-1.87.0-cmake.zip Boost::filesystem
...
fmt / fmt::fmt
json / nlohmann_json::nlohmann_json
hiredis / hiredis::hiredis
redis-plus-plus 此库依赖 hiredis redis++::redis++
cpp-httplib / httplib::httplib
thread-pool 此库无 CMakeLists.txt
拷贝 include/BS_thread_pool.hpp 使用即可
/
libzmq / libzmq
cppzmq 此库依赖 libzmq cppzmq
range-v3 / range-v3
opencv / ${OpenCV_LIBS}

使用方式

  • 打开 start.py,按需配置编译参数
    • 每个库的 install 目录下均会生成一个 script_command.txt
    • 该文件记录了此库的 config、build、install 相关的参数
    • 每个库生成的工作条件:相应的 install 目录下不存在 script_command.txt 即会触发 config、build、install
  • 配置好 start.py 后,运行此脚本即可

CMake

  • 参考:nly

  • 注意点

    • 使用者的 CXX 的版本,要和此库保持一致(此库默认使用 CXX17)

    • find_package 示例

      # 指定 nly_upstream 的安装路径, 用于 find_package
      set(NLY_UPSTREAM_INSTALL "D:/nly_upstream/nly_install")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/abseil-cpp_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/protobuf_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/boost_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/fmt_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/json_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/hiredis_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/redis-plus-plus_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/cpp-httplib_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/libzmq_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/cppzmq_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/range-v3_install_path")
      list(APPEND CMAKE_PREFIX_PATH "${NLY_UPSTREAM_INSTALL}/opencv_install_path")
      
      find_package(absl REQUIRED)
      find_package(protobuf REQUIRED)
      find_package(Boost REQUIRED COMPONENTS  date_time serialization)
      find_package(fmt REQUIRED)
      find_package(nlohmann_json REQUIRED)
      find_package(hiredis REQUIRED)
      find_package(redis++ REQUIRED)
      find_package(httplib REQUIRED)
      find_package(ZeroMQ REQUIRED) # for libzmq
      find_package(cppzmq REQUIRED)
      find_package(range-v3 REQUIRED)
      find_package(opencv REQUIRED)
      
      # 按需链接即可
      target_link_libraries(your_target PUBLIC
        absl::strings absl::base
        protobuf::libprotobuf protobuf::libprotobuf-lite protobuf::libprotoc
        Boost::date_time Boost::serialization
        fmt::fmt
        nlohmann_json::nlohmann_json
        hiredis::hiredis  
        redis++::redis++  
        httplib::httplib
        libzmq
        cppzmq
        range-v3
        ${OpenCV_LIBS}
        )

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published