Description
Xmake 版本
2.9.9
操作系统版本和架构
版本 Windows 11 家庭中文版 版本号 24H2 安装日期 2025/1/25 操作系统版本 26100.4061 体验 Windows 功能体验包 1000.26100.84.0 / x64
描述问题
更新vs到Preview 7.0并运行 xmake update -s dev后尝试编译项目就发生该问题,回滚vs仍然发生(原先编译可以通过)
assertion failure稳定发生在编译模块实现文件时
期待的结果
编译正常
工程配置
使用MSVC工具链,19.44
add_rules("mode.debug", "mode.release")
set_arch("x64")
set_policy("build.ccache", true)
set_toolchains("msvc")
add_requires("glfw")
add_requires("msdfgen", {
configs = {
openmp = true,
extensions = true ,
cxxflags = "/DMSDFGEN_USE_CPP11"
}
})
add_requires("freetype")
add_requires("nanosvg")
add_requires("protobuf-cpp", {
configs = {
zlib = true,
}
})
target("protobuf_gen")
set_kind("static")
set_languages("c++17")
add_packages("protobuf-cpp", {public = true})
add_rules("protobuf.cpp")
add_files("generate/srl/*.cc")
target_end()
target("mo_yanxi")
set_kind("binary")
set_extension(".exe")
set_languages("c++23")
set_policy("build.c++.modules", true)
if is_mode("debug") then
add_cxflags("/RTCsu")
add_defines("DEBUG_CHECK=1")
else
set_symbols("debug")
set_optimize("fastest")
add_cxflags("/GL")
add_ldflags("/LTCG")
add_defines("DEBUG_CHECK=0")
end
add_deps("protobuf_gen")
add_defines("_MSVC_STL_HARDENING=1")
add_defines("_MSVC_STL_DESTRUCTOR_TOMBSTONES=1")
add_cxflags("/FC")
add_cxflags("/arch:AVX")
add_cxflags("/arch:AVX2")
add_cxflags("/wd4244")
add_cxflags("/wd4100")
add_cxflags("/wd4458")
add_cxflags("/wd4267")
add_cxflags("/wd4189")
add_cxflags("/wd5030")
add_cxflags("/bigobj")
add_files("src/**.cppm")
add_files("src/**.ixx")
add_files("src/**.cpp")
add_packages("glfw")
add_packages("msdfgen")
add_packages("freetype")
add_packages("nanosvg")
add_packages("protobuf-cpp")
add_includedirs("generate")
add_includedirs("src")
add_includedirs("submodules/VulkanMemoryAllocator/include")
add_includedirs("submodules/plf_hive")
add_includedirs("submodules/small_vector/source/include")
add_includedirs("submodules/stb")
local vulkan_sdk = os.getenv("VULKAN_SDK")
if not vulkan_sdk then
raise("Vulkan SDK not found!")
end
add_includedirs(path.join(vulkan_sdk, "Include"))
add_linkdirs(path.join(vulkan_sdk, "Lib"))
add_links("vulkan-1")
add_links("shaderc_shared")
add_defines("VK_USE_64_BIT_PTR_DEFINES=1")
target_end()
附加信息和错误日志
error: @programdir\core\main.lua:329: @programdir\actions\build\main.lua:146: @programdir\modules\async\runjobs.lua:331: @programdir\core\sandbox\modules\os.lua:442: assertion failed!
stack traceback:
[C]: in function 'assert'
[@programdir\core\sandbox\modules\os.lua:442]: in function 'isfile'
[@programdir\modules\private\action\build\object.lua:64]: in function 'script'
[@programdir\modules\private\action\build\object.lua:131]: in function 'build_object'
[@programdir\modules\private\action\build\object.lua:171]: in function 'jobfunc'
[@programdir\modules\async\runjobs.lua:247]:
stack traceback:
[C]: in function 'error'
@programdir\core\base\os.lua:1075: in function 'os.raiselevel'
(...tail calls...)
@programdir\core\main.lua:329: in upvalue 'cotask'
@programdir\core\base\scheduler.lua:406: in function <@programdir\core\base\scheduler.lua:399>