0

Facebook 的 wangle 库可以使用 cmake 设置,如下所示:

set_and_check(WANGLE_INCLUDE_DIR /usr/local/include/wangle)
set_and_check(WANGLE_CMAKE_DIR /usr/local/lib/cmake/wangle)

if (NOT TARGET wangle::wangle)
    include("${WANGLE_CMAKE_DIR}/wangle-targets.cmake")
endif()

set(WANGLE_LIBRARIES wangle::wangle)

if (NOT wangle_FIND_QUIETLY)
    message(STATUS "Found wangle: ${PACKAGE_PREFIX_DIR}")
endif()

但是,proxygen 的 install.sh 并不像 wangle 和其他 fb 库那样将 include 和 lib 文件放在 /usr/local 中。

通过 cmake 设置包含和链接到 proxygen 的正确方法是什么?

4

1 回答 1

1

根据proxygen README,您应该安装所有要求,包括follywanglefmtfizz,以及mvfst是否需要HTTP/3 协议。使用中的说明安装 proxygen 后,README您可以在 CMake 项目中使用它。以下是一个示例,您可以在此 repoCMakeLists.txt中找到完整的示例项目。

cmake_minimum_required(VERSION 3.10)

project(3hat)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")

find_package(proxygen REQUIRED)
find_package(gflags REQUIRED)
  
add_subdirectory(server)
于 2021-02-02T16:35:08.053 回答