CMake как подключить "headers-библиотеку"?
Задача следующая: есть "статическая"-библиотека, на самом же деле это автоматически сгенерированная папка С/С++ хедеров. Проблема в том, что они не связанные между собою СМаке-ом, как того требует проект.
СМаке 3.23.3 / С++17 / Linux 18.04 / GCC 7.5.0
|- main.cpp
|- CMakeLists.txt
|- Libraries(subdir)
| |- Mavlink(subsubdir)
| | |- *subdirs with headers and headers*
| | |- mav_main.h // Main file to include in code
| |- CMakeLists.txt(in_subdir)
Вот то малое, что как минимум не выбрасывало ошибок до недавнего времени:
CMakeLists.txt(main)
...
add_subdirectory(Libraries)
taget_link_libraries(${CMAKE_PROJECT_NAME} Libraries/Mavlink)
...
CMakeLists.txt(in_subdir)
add_library(MAV INTERFACE)
target_include_directories(NAME_proj PUBLIC &{CMAKE_CURRENT_LIST_DIR})
Спонтанно появилось следующие сообщение:
.. cannot find -lLibraries/Mavlink
Вопрос:
Какие есть варианты решения задачи? Я встречал советы прописывания всего ручками, но там слишком много файлов.
Как автоматизировать (1) если иного выхода нету?
Возможно ли описать/ин-ть всю либу Mavlink из CMakeLists.txt(in_subdir)? В дальнейшем хотелось бы из нее управлять будущими либамию.