Я использую менеджер пакетов vcpkg
для установки (stati c) Boost
библиотек через vcpkg install boost:x64-windows-static
.
Кроме того, я использую CMake
в качестве системы сборки и я Я передаю C:\vcpkg\scripts\buildsystems\vcpkg.cmake
в CMake
с помощью команды -DCMAKE_TOOLCHAIN_FILE
CMake
.
В моих CMakeLists.txt
я принудительно ставлю c Boost
библиотеки:
set(Boost_USE_STATIC_LIBS ON)
find_package(Boost COMPONENTS filesystem iostreams REQUIRED)
if (Boost_FOUND)
include_directories(${Boost_INCLUDE_DIRS})
link_directories(${Boost_LIBRARY_DIRS})
endif ()
# ...
target_link_libraries(${PROJECT_NAME} ${Boost_LIBRARIES})
Тем не менее, Visual Studio
по-прежнему пытается найти неправильный путь к файлу для моих библиотек Boost
:
Error 'C:/vcpkg/installed/x64-windows/lib/boost_filesystem-vc140-mt.lib', needed by 'MyProject.exe', missing and no known rule to make it
Если я установлю библиотеки Dynami c Boost
, он будет работать нормально, так как где Visual Studio
выглядит. Однако вместо этого я хочу использовать библиотеки stati c в моей сборке, чтобы все DLL
были "объединены" в окончательный EXE
.
Как я могу выполнить sh this?