Premake是否支持Thread-Sanitizer构建?配置方法咨询
Premake中启用Thread-Sanitizer的问题解答
1. 是否存在官方支持方式?
目前Premake官方的sanitize配置接口仅支持AddressSanitizer和Fuzzer,没有内置的*Thread-Sanitizer(TSAN)*官方配置选项。
2. 手动添加TSAN标志的方法
如果需要启用Thread-Sanitizer,你可以直接在Premake的项目配置中,手动为编译和链接阶段添加对应的GCC标志。在你的premake5.lua文件里,针对目标项目添加如下配置:
project "YourProjectName" -- 保留原有的项目配置(比如语言、输出目录等) filter "toolset:gcc" buildoptions "-fsanitize=thread" -- 向编译阶段添加TSAN标志 linkoptions "-fsanitize=thread" -- 向链接阶段添加TSAN标志
通过filter "toolset:gcc"可以确保只在使用GCC编译时应用这些标志,避免对其他编译器(如Clang、MSVC)产生不必要的影响。
内容的提问来源于stack exchange,提问作者Lorah Attkins
相关产品推荐
相关产品推荐

