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

编译Python时出现__gcov_indirect_call_profiler未定义符号错误的原因

Python编译出现__gcov_indirect_call_profiler未定义符号的原因及解决

原因分析

__gcov_indirect_call_profiler 是GCC代码覆盖率工具(gcov)的专属符号,出现这个错误的核心原因是编译目录中残留了带有gcov编译标记的旧产物,且configure缓存未清理,导致新旧编译配置的文件混合链接。

具体细节:

  • 首次编译正常,但后续修改编译选项时,可能曾触发过开启代码覆盖率的编译逻辑(比如误加--enable-coverage参数,或CFLAGS中混入-fprofile-arcs -ftest-coverage),生成了依赖gcov的目标文件。
  • 重新编译时没有彻底清理旧文件,即使改回原选项,残留的带gcov依赖的目标文件依然存在,新编译的二进制尝试链接这些文件时,找不到对应的gcov符号。
  • configure缓存会保留之前的配置参数,即使重新执行configure,旧的缓存可能仍会影响编译流程,导致混合配置。

解决方法

  1. 彻底清理编译目录,清除所有残留产物和配置缓存:
    make distclean
    
  2. 重新执行你的configure配置命令:
    ./configure --prefix="$PREFIX" --enable-optimizations --enable-shared LDFLAGS="-Wl,--rpath=$PREFIX/lib"
    
  3. 重新编译并安装:
    make -j$(nproc)
    make install
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 11:35:08