backend.lib(BackendUtils.obj) : error LNK2019
flymehope opened this issue · 1 comments
I am using filament-v1.62.0-windows. When building xmake, it prompts a lib problem. Below is my xmake.lua file. Please help me check where the error is.
--error
error: backend.lib(BackendUtils.obj) : error LNK2019: 无法解析的外部符号 __std_search_1,函数 "char const * __cdecl std::_Search_vectorized<char const ,char const >(char const * const,char const * const,char const * const,unsigned __int64)" (??$_Search_vectorized@$$CBD$$CBD@std@@YAPEBDQEBD00_K@Z) 中引用了该符号
backend.lib(VulkanPlatform.obj) : error LNK2001: 无法解析的外部符号 __std_search_1
backend.lib(ShaderCompilerService.obj) : error LNK2001: 无法解析的外部符号 __std_search_1
backend.lib(ShaderCompilerService.obj) : error LNK2019: 无法解析的外部符号 __std_find_end_1,函数 "char const * __cdecl std::_Find_end_vectorized<char const ,char const >(char const * const,char const * const,char const * const,unsigned __int64)" (??$_Find_end_vectorized@$$CBD$$CBD@std@@YAPEBDQEBD00_K@Z) 中引用了该符号
build\windows\x64\release\test.exe : fatal error LNK1120: 2 个无法解析的外部命令
--xmake.lua
set_project("filament_test")
set_version("1.0.0")
set_languages("c++20")
add_rules("mode.debug", "mode.release")
set_runtimes("MT")
--add_requires("glfw", "glad", "filament", {configs = {runtimes = "MT"}})
add_requires("glfw", "glad", {configs = {runtimes = "MT"}})
target("test")
add_packages("glfw", "glad", {public = true})
set_runtimes("MT")
set_kind("binary")
add_files("src/main.cpp")
add_includedirs("filament/include", {public = true})
add_linkdirs("filament/lib/x86_64/mt")
add_links(
"abseil",
"filament",
"backend",
"bluegl",
"bluevk",
"filabridge",
"filaflat",
"utils",
"geometry",
"smol-v",
"ibl",
"vkshaders",
"abseil"
)
add_syslinks("gdi32", "user32", "opengl32")
after_build(function (target)
local targetdir = target:targetdir()
os.cp("filament/bin/SPIRV-Tools-shared.dll", target:targetdir())
end)
The problem was solved, I reinstalled my vs2022.