我设法将boringssl构建为使用/ MT和/ NODEFAULTLIB构建的dll 我在输入中添加了c运行时库 - >其他图书馆 使用的工具集是LLVM-vs2014
令人惊讶的是,我检查了ssl.dll和crypto.dll以及作为测试构建的exe文件,它们依赖于动态crt 我执行了:
dumpbin.exe /DEPENDENTS ssl.dll
输出包含vcruntime14.dll和其他crt dll
编辑:为了更清楚,我从这里添加了库:https://msdn.microsoft.com/en-us/library/abx4dbyh.aspx
我还添加到了CMakeLists.txt文件的顶部:
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MT")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_RELEASE} /MTd")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_RELEASE} /MTd")
并确保我看到了很多项目的标记并设置了这个标志
现在的问题:我想在静态可执行文件中使用boringssl但是库似乎是用/ MD构建的