Я хотел бы использовать vcpkg для управления своими пакетами. Я также хотел бы использовать CMake для управления своими сборками. Можно ли включить библиотеку Quantlib, не прибегая к жестко закодированным ссылкам? Что-то вроде find_package (Quantlib)?
РЕДАКТИРОВАТЬ: То, что я пытался далеко (отказ от ответственности - я новичок в этом. Такое ощущение, что я ищу в темноте. Этот раздел немного меняет мое невежество слишком прозрачно) Во-первых, это чистая сборка и у меня нет ограничений обратной сопоставимости. Моя цель - создать что-то, что я могу использовать между моими средами Linux и Windows. Я использую VSCode для редактирования своего кода и CMake. Моей ссылкой здесь была библиотека Boost. То, как я это успешно использовал (и заголовок только на данный момент), было
find_package(Boost ${BOOST_VERSION} REQUIRED)
if (Boost_FOUND)
include_directories(${Boost_INCLUDE_DIRS})
else()
MESSAGE("BOOST not found")
endif()
На сегодняшний день я добиваюсь прогресса в следующих строках (я не уверен на 100%, что это еще работает, но Я верю, что перейду к черту):
set(QUANTLIB_DIR "E:/SD/Programming/C++/vcpkg/installed/x64-windows"
CACHE PATH "The path to the quantlib directory")
include_directories(${QUANTLIB_DIR})
add_library(quantlib STATIC IMPORTED)
set_target_properties(quantlib PROPERTIES IMPORTED_LOCATION ${QUANTLIB_DIR}/lib/QuantLib-vc141-x64-mt.lib)
add_library(quantlibDebug STATIC IMPORTED)
set_target_properties(quantlibDebug PROPERTIES IMPORTED_LOCATION ${QUANTLIB_DIR}/debug/lib/QuantLib-vc141-x64-mt-gd.lib)
Если мне нужно действовать таким образом (зависит от системы, зависит от сборки), мне понадобятся такие разделы для каждой среды. Я надеялся, что использование диспетчера пакетов с CMake позволит мне использовать системные переменные c в моей сборке. Я наивен?