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

Ubuntu迁移Windows时Boost序列化模块链接错误求助

移植Visual SLAM C++项目到Windows时Boost序列化LNK2019链接错误问题

我正在将一个Visual SLAM C++项目从Ubuntu移植到Windows,已成功编译核心库及其依赖包(g2o、DBoW2、Pangolin),但在Debug配置下链接最终可执行文件时,遇到大量boost::archive命名空间下Boost序列化相关的LNK2019链接错误。

错误信息

Severity    Code    Description Project File    Line    Suppression State
Error   LNK2019 unresolved external symbol "__declspec(dllimport) protected: __cdecl boost::archive::detail::basic_iarchive::basic_iarchive(unsigned int)" (__imp_??0basic_iarchive@detail@archive@boost@@IEAA@I@Z) referenced in function "protected: __cdecl boost::archive::detail::common_iarchive<class boost::archive::binary_iarchive>::common_iarchive<class boost::archive::binary_iarchive>(unsigned int)" (??0?$common_iarchive@Vbinary_iarchive@archive@boost@@@detail@archive@boost@@IEAA@I@Z) stereo_kitti    C:\Users\xyz\vs19\orb_slam3\build\ORB_SLAM3.lib(System.obj) 1

Severity    Code    Description Project File    Line    Suppression State
Error   LNK2019 unresolved external symbol "__declspec(dllimport) public: virtual __cdecl boost::archive::detail::basic_iarchive::~basic_iarchive(void)" (__imp_??1basic_iarchive@detail@archive@boost@@UEAA@XZ) referenced in function "int `protected: __cdecl boost::archive::detail::common_iarchive<class boost::archive::binary_iarchive>::common_iarchive<class boost::archive::binary_iarchive>(unsigned int)'::`1'::dtor$0" (?dtor$0@?0???0?$common_iarchive@Vbinary_iarchive@archive@boost@@@detail@archive@boost@@IEAA@I@Z@4HA)  stereo_kitti    C:\Users\xyz\vs19\orb_slam3\build\ORB_SLAM3.lib(System.obj) 1

已尝试的解决方法

  • 从源码编译Boost-1_70版本(Windows系统)
  • 尝试MDd、MTd等多种库配置组合,均无效
  • 更换为Boost-1_77版本,问题依旧
  • 查阅资料提到版本不匹配问题,但不确定是否适用,也不清楚适合的Boost版本(Ubuntu下仅用-lboost_serialization链接系统库)

额外信息

  1. 使用C++17语言标准
  2. 生成的项目库ORB_SLAM3.lib约345MB

链接器输入的附加依赖项

C:\dev\Boost_1_70_0\lib\libboost_system-vc142-mt-x64-1_70.lib
C:\dev\Boost_1_70_0\lib\libboost_program_options-vc142-mt-x64-1_70.lib
C:\dev\Boost_1_70_0\lib\libboost_serialization-vc142-mt-x64-1_70.lib
C:\dev\Boost_1_70_0\lib\libboost_iostreams-vc142-mt-x64-1_70.lib
C:\dev\Boost_1_70_0\lib\libboost_filesystem-vc142-mt-x64-1_70.lib
C:\dev\Boost_1_70_0\lib\libboost_container-vc142-mt-x64-1_70.lib
C:\dev\Boost_1_70_0\lib\libboost_thread-vc142-mt-x64-1_70.lib
Release\ORB_SLAM3.lib
C:\dev\Boost_1_70_0\lib\libboost_chrono-vc142-mt-x64-1_70.lib
C:\dev\opencv\build\x64\vc15\lib\opencv_world3413.lib
..\Thirdparty\Pangolin\build\Release\pango_glgeometry.lib
..\Thirdparty\Pangolin\build\Release\pango_geometry.lib
..\Thirdparty\Pangolin\build\Release\pango_python.lib
..\Thirdparty\Pangolin\build\Release\pango_plot.lib
..\Thirdparty\Pangolin\build\Release\pango_scene.lib
..\Thirdparty\Pangolin\build\Release\pango_tools.lib
..\Thirdparty\Pangolin\build\Release\pango_display.lib
..\Thirdparty\Pangolin\build\Release\pango_vars.lib
..\Thirdparty\Pangolin\build\Release\pango_video.lib
..\Thirdparty\Pangolin\build\Release\pango_packetstream.lib
..\Thirdparty\Pangolin\build\Release\pango_windowing.lib
..\Thirdparty\Pangolin\build\Release\pango_opengl.lib
..\Thirdparty\Pangolin\build\Release\pango_image.lib
..\Thirdparty\Pangolin\build\Release\pango_core.lib
C:\dev\vcpkg\packages\glew_x64-windows\lib\glew32.lib
opengl32.lib
glu32.lib
..\Thirdparty\Pangolin\build\Release\tinyobj.lib
..\Thirdparty\DBoW2\lib\Debug\DBoW2.lib
Thirdparty\g2o\Debug\g2o.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
comdlg32.lib
advapi32.lib

后续打算尝试的方案

  • 使用更旧版本的Boost

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 03:07:34