套接字只能在调试中工作

时间:2019-05-15 08:40:43

标签: visual-studio debugging release

以发布和调试模式构建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中?

0 个答案:

没有答案