Зависимость интерфейса CMake - PullRequest
0 голосов
/ 09 июля 2020

Недавно я видел использование PUBLI C / PRIVATE в зависимости CMake. Из того, что я узнал, если я хочу создать общую библиотеку, которая использует другую библиотеку, то:

  1. используйте PUBLI C - для включения этой библиотеки как в мои cpp, так и в файлы заголовков.
  2. использовать PRIVATE - для включения этой библиотеки только в мои cpp файлы.
  3. использовать ИНТЕРФЕЙС - для включения этой библиотеки только в мой файл заголовка.

Что такое Главная идея ? Как я могу улучшить свой файл CMake с помощью этой функции? можно ли его использовать как в библиотеке stati c, так и в библиотеке Dynami c one?

Вот мой файл CMake:

cmake_minimum_required (VERSION 2.8)
set (CMAKE_CXX_FLAGS "-Weverything -std=c++11 -Wall -Wextra -g")
set (CMAKE_CXX_STANDARD 11)
set (CMAKE_BUILD_TYPE Debug)
project (internal)
set (internal VERSION 0.2)


file (GLOB internal_src
        "utils.cpp"
       "inspection.cpp"
        "ct_proxy_if.cpp"
        "stats.cpp")

file  (GLOB main_SRC
        ${internal_src}
        "mainW.cpp")

add_library(${PROJECT_NAME} STATIC ${internal_src})
target_link_libraries(internal infrastructures pthread jsoncpp ssl crypto)

Я использую библиотеку stati c с именем Infrastructures ( библиотеку, которую разработал мой коллега)

Я прочитал этот пост CMake target_link_libraries Зависимости интерфейса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...