-
-
[求助]valgrind 在 ARM 上的交叉编译并使用 qemu-arm 运行出错
-
发表于: 2021-7-13 14:35 9098
-
环境:
- ubuntu 18.04
- qemu 5.2.0
- arm-linux-gnueabi-gcc 7.5.0
编译 valgrind 想在 arm 平台上运行,运行环境是在 qemu 模拟器,但是会出现报错
1 2 | $ qemu - arm . / bin / valgrind valgrind: failed to start tool 'memcheck' for platform 'arm-linux' : Exec format error |
截图:
strace 查看
具体使用的编译指令是
1 2 3 | . / configure - - host = arm - linux CC = arm - linux - gnueabi - gcc - - prefix = / opt / valgrind make sudo make install |
使用的qemu 版本是 5.2.0
1 2 3 | $ qemu - arm - version qemu - arm version 5.2 . 0 Copyright (c) 2003 - 2020 Fabrice Bellard and the QEMU Project developers |
查看了一下 valgrind 和 memcheck-arm-linux 的文件类型,发现是一样的,期间还尝试过静态编译加了 CFLAGS='-static'
参数,问题依然存在。在 qemu 系统态下运行也存在这个问题。唯一在使用 qemu 2.1 版本时能成功运行 valgrind,但我其它的程序需要使用 qemu 5 才能跑起来~
1 2 3 4 5 6 | $ file . / bin / valgrind . / bin / valgrind: ELF 32 - bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, for GNU / Linux 3.2 . 0 , BuildID[sha1] = aad29d7b7e698a940a1b32fbedf98009b9da113d, with debug_info, not stripped cuc@cuc - VirtualBox: / opt / valgrind $ file "/opt/valgrind/libexec/valgrind/memcheck-arm-linux" / opt / valgrind / libexec / valgrind / memcheck - arm - linux: ELF 32 - bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, BuildID[sha1] = 826d60ef76dcbf0994389a43d0db7e83a8527459 , with debug_info, not stripped |
没有其它排错思路了
呜呜呜~求求各路大神帮我看看什么问题
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 2021-7-13 18:22
被cloud0606_f编辑
,原因:
赞赏
看原图
赞赏
雪币:
留言: