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

Ubuntu 20.04下GCC 9.x编译时ld找不到libtsan_preinit.o的解决方法

解决Ubuntu 20.04下GCC 9.4.0使用ThreadSanitizer提示找不到libtsan_preinit.o的问题

在Ubuntu 20.04环境下使用gcc 9.4.0编译代码,当在CMake配置中添加ThreadSanitizer相关编译选项:

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=thread -g -fno-omit-frame-pointer")

会出现链接错误:/usr/bin/ld can't find libtsan_preinit.o。这是Ubuntu针对gcc-9的已知问题。

可通过以下步骤修复:

  • 安装libgcc-10-dev开发包:
    sudo apt install libgcc-10-dev
    
  • 创建软链接,让链接器定位到缺失的文件:
    sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/10/libtsan_preinit.o /usr/lib/libtsan_preinit.o
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 23:34:52