以发布和调试模式构建Windows可执行文件。 个人静态库是使用发布和调试配置构建的。 用于套接字连接的静态库ws2_32对于两个可执行文件都是相同的。
->套接字连接在调试模式下工作
->套接字连接在释放模式下不起作用
调试构建和启动还有其他内容:
'gsm110x.exe' (Win32): Loaded 'C:\Windows\SysWOW64\mswsock.dll'.
在发行版本的构建和启动中缺少此行。
cmake代码
set(CMAKE_CXX_FLAGS_DEBUG "/MDd /MP /EHsc /Ob0 /Od /Zi /RTC1")
set(CMAKE_CXX_FLAGS_RELEASE "/MD /MP /EHsc /Ob0 /Od /DNDEBUG")
调试:
target_link_libraries(
main
PRIVATE
ws2_32
"${PROJECT_SOURCE_DIR}/winLibs/debug/ftdi.lib"
发布:
target_link_libraries(
main
PRIVATE
ws2_32
"${PROJECT_SOURCE_DIR}/winLibs/release/ftdi.lib"
为什么mswsock.dll仅包含在调试exe中?