【问题标题】:Valgrind not working on 32-bit binariesValgrind 不适用于 32 位二进制文​​件
【发布时间】:2015-02-20 07:10:48
【问题描述】:

我在我的 RHEL 64 位机器上使用 valgrind。但是它拒绝运行 32 位可执行文件。

valgrind: failed to start tool 'memcheck' for platform 'x86-linux': No such file or directory

有人知道怎么解决吗?我无法将二进制文件更改为 64 位,因为它具有与之关联的大代码。

谢谢

【问题讨论】:

  • 听起来您可能需要获取valgrind 的源代码并自己构建它。您尝试使用的版本似乎仅针对 64 位构建。
  • 你试过为 x86 安装 glibc-debuginfo 吗?
  • it refuses to run for 32-bit executables...可能不是提供的可执行文件,而是 memcheck 二进制文件本身是 32 位的。

标签: c++ c memory-management valgrind


【解决方案1】:
  1. 将 VALGRIND_LIB 设置为正确路径:

    导出 VALGRIND_LIB="/usr/lib/valgrind"

  2. 需要为 corect 工具链编译 Valgrind。 (交叉编译)或安装您的发行版提供的 valgrind 32 位软件包。

看看这里:Bug 179472

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    • 2021-02-14
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-23
    相关资源
    最近更新 更多