Есть динамическая библиотека(своя). Она использует другие библиотеки. Собираю под Linux, используя CMake. Приложение использует хидеры из этой библиотеки, чтобы наследоваться и прочее.
Проблема: Мне приходится в обязательном порядке в приложении указывать те же библиотеки, что использует моя библиотека. А так же приходится явно указывать все папки с хидерами(но это нормально уже). Есть вариант НЕ указывать библиотеки, которые использует моя библиотека(в ней они и так указываются при сборке)?
А почему бы не использовать плюшки самого cmake, чтобы избежать лишней возни?
Если у вас есть библиотека, вроде:
add_library(mylib ${mylib_SRC})
то логично использовать эту же цель и для других сборок:
add_executable(myexe main.cpp)
target_link_libraries(myexe PRIVATE mylib)
Заголовочники же можно указать как PUBLIC или INTERFACE, чтобы они автоматом подключались для цели, к которой будет слинкована библиотека
target_include_directories(mylib PUBLIC mylib_include_dir)
Сборка персонального компьютера от Artline: умный выбор для современных пользователей