You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS2022 exe项目移除vcpkg后构建并链接IXWebSocket依赖

问题解答

关于AutoLink的理解是否正确?

你的理解完全正确。vcpkg的AutoLink机制不仅会自动配置依赖库的链接路径,还会在需要时触发依赖库的自动构建(生成对应配置的.lib/.dll文件),并将这些库自动加入项目的链接器输入列表。禁用AutoLink后,IXWebSocket的库要么未被构建,要么链接器找不到已构建的库,因此出现LNK2019/LNK2001未解析外部符号错误。

如何让IXWebSocket优先构建?

在Visual Studio 2022中无需转用CMake,直接通过解决方案配置即可控制构建顺序:

  • 如果IXWebSocket已作为子项目加入解决方案:右键主项目 → 项目依赖项,勾选IXWebSocket项目,VS会自动保证它在主项目之前完成构建。
  • 如果IXWebSocket未加入解决方案:右键解决方案 → 添加 → 现有项目,找到IXWebSocket的.vcxproj文件(官方通常提供)添加到解决方案,再按上述步骤配置依赖。

仅用CMake构建IXWebSocket的操作步骤

无需将整个项目转为CMake,单独构建IXWebSocket的步骤如下:

  1. 打开对应平台的VS工具链命令行(比如x64 Native Tools Command Prompt for VS 2022)。
  2. 进入IXWebSocket本地目录,创建并进入build文件夹:
    mkdir build && cd build
    
  3. 运行CMake生成VS项目文件,指定VS版本、平台和C++标准:
    cmake .. -G "Visual Studio 17 2022" -A x64 -DCMAKE_CXX_STANDARD=20 -DCMAKE_BUILD_TYPE=Release
    
    (如需Debug版本,将CMAKE_BUILD_TYPE改为Debug;平台选Win32对应x86)
  4. 调用MSBuild完成构建:
    msbuild IXWebSocket.sln /p:Configuration=Release /p:Platform=x64
    
    (根据需求替换Configuration和Platform参数)

构建完成后,在build/lib(或对应配置子目录)下会得到编译好的.lib文件,之后在主项目的链接器设置中:

  • 添加IXWebSocket的库目录(指向生成的lib文件夹)
  • 在输入项中添加对应库文件名(比如ixwebsocket.lib,Debug版本通常为ixwebsocketd.lib)
  • 同时确保主项目包含IXWebSocket的头文件目录

内容的提问来源于stack exchange,提问作者cptalpdeniz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 21:22:38