LINK:致命错误LNK1104:无法打开文件“libboost_serialization-vc142-mt-s-x64-1_80.lib”

问题描述 投票:0回答:1

平台:Windows 10、Visual Studio VC142

我在我的项目中使用Boost 1.80.0我已经构建了 Boost 并一直在使用 Container 等模块,没有任何问题,但是我尝试使用 Boost.Serialization 并收到链接错误:

LINK : fatal error LNK1104: cannot open file 'libboost_serialization-vc142-mt-s-x64-1_80.lib'

当检查充满 .lib 文件的目录时,我看到类似的文件,但没有看到

-mt-s-x64
:

我正在寻求关于为什么链接器正在寻找这个设置过程(引导程序、构建)不会发出的库的见解。

我的预编译命令:

@call cl.exe ^
/c ^
/Ycstdafx.hpp ^
src/stdafx.cpp ^
/Yustdafx.hpp ^
/Fo:obj_debug\ ^
/Fe:dist\swan_debug.exe ^
/Fd:dist\vc140_debug.pdb ^
/I"C:/code/glfw" ^
/I"C:/code/boost_1_80_0" ^
/std:c++20 ^
/W4 ^
/EHsc ^
/MP ^
/MT ^
/D_CRT_SECURE_NO_WARNINGS ^
/Zi ^
/link ^
/DEBUG:FULL ^
/NODEFAULTLIB:MSVCRTD ^
/NODEFAULTLIB:LIBCMT ^
/LIBPATH:"C:/code/glfw" ^
/LIBPATH:"C:/code/boost_1_80_0/stage/lib" ^
glfw3.lib ^
opengl32.lib ^
gdi32.lib ^
shell32.lib ^
kernel32.lib ^
msvcrt.lib ^
ole32.lib ^
shlwapi.lib ^
Pathcch.lib

我的主要编译命令:

@call cl.exe ^
src/all_in_one.cpp ^
obj_debug/imgui_demo.obj ^
obj_debug/imgui_draw.obj ^
obj_debug/imgui_impl_glfw.obj ^
obj_debug/imgui_impl_opengl3.obj ^
obj_debug/imgui_tables.obj ^
obj_debug/imgui_widgets.obj ^
obj_debug/imgui.obj ^
obj_debug/stb_image.obj ^
obj_debug/stdafx.obj ^
/Fo:obj_debug\ ^
/Fe:dist\swan_debug.exe ^
/Fd:dist\vc140_debug.pdb ^
/Yustdafx.hpp ^
/I"C:/code/glfw" ^
/I"C:/code/boost_1_80_0" ^
/std:c++20 ^
/nologo ^
/W4 ^
/EHsc ^
/MP ^
/MT ^
/D_CRT_SECURE_NO_WARNINGS ^
/Zi ^
/link ^
/NATVIS:swan.natvis ^
/DEBUG:FULL ^
/NODEFAULTLIB:MSVCRTD ^
/NODEFAULTLIB:LIBCMT ^
/LIBPATH:"C:/code/glfw" ^
/LIBPATH:"C:/code/boost_1_80_0/stage/lib" ^
glfw3.lib ^
opengl32.lib ^
gdi32.lib ^
shell32.lib ^
kernel32.lib ^
msvcrt.lib ^
ole32.lib ^
shlwapi.lib ^
Pathcch.lib ^
Dbghelp.lib

编译器输出:

all_in_one.cpp
Microsoft (R) Incremental Linker Version 14.29.30148.0    
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:dist\swan_debug.exe
/debug
/NATVIS:swan.natvis
/DEBUG:FULL
/NODEFAULTLIB:MSVCRTD
/NODEFAULTLIB:LIBCMT
/LIBPATH:C:/code/glfw
/LIBPATH:C:/code/boost_1_80_0/stage/lib
glfw3.lib
opengl32.lib
gdi32.lib
shell32.lib
kernel32.lib
msvcrt.lib
ole32.lib
shlwapi.lib
Pathcch.lib
Dbghelp.lib
obj_debug\all_in_one.obj
obj_debug/imgui_demo.obj
obj_debug/imgui_draw.obj
obj_debug/imgui_impl_glfw.obj
obj_debug/imgui_impl_opengl3.obj
obj_debug/imgui_tables.obj 
obj_debug/imgui_widgets.obj
obj_debug/imgui.obj
obj_debug/stb_image.obj
obj_debug/stdafx.obj
LINK : fatal error LNK1104: cannot open file 'libboost_serialization-vc142-mt-s-x64-1_80.lib'
c++ boost linker-errors
1个回答
0
投票

如您所见,您提供的库路径中没有文件“libboost_serialization-vc142-mt-s-x64-1_80.lib”。我查找丢失的 .lib 或 .dll 文件的常用方法是使用 Everything。使用此应用程序在您的系统中搜索 .lib 文件,如果找到它,请将其放入您的库搜索路径中。

© www.soinside.com 2019 - 2024. All rights reserved.