CMAKE搭配vcpkg在msvc上进行静态编译
程序员文章站
2022-05-06 20:09:45
...
CMakeLists.txt设置MSVC_RUNTIME_LIBRARY
,相当于用msvc编译release时加上/MT
,debug 时加上 /MTD
add_executable(foo foo.c)
set_property(TARGET foo PROPERTY
MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
详细介绍见CMake文档 MSVC_RUNTIME_LIBRARY — CMake 3.21.2 Documentation
设置两个cmake configure参数,-DCMAKE_TOOLCHAIN_FILE
指定vcpkg位置; -DVCPKG_TARGET_TRIPLET
指定编译目标
cmake .. -DCMAKE_TOOLCHAIN_FILE=.../vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x86-windows-static
思路来自Vcpkg updates: Static linking is now available - C++ Team Blog
上一篇: Netty 读事件的处理
下一篇: 荀彧和陆逊为何都被自己的主公逼死了呢?