FS#75027 - [valgrind] Impossible to run valgrind without an internet connection
Attached to Project:
Arch Linux
Opened by Sam Linnfer (lllf) - Saturday, 11 June 2022, 05:31 GMT
Last edited by freswa (frederik) - Saturday, 11 June 2022, 12:40 GMT
Opened by Sam Linnfer (lllf) - Saturday, 11 June 2022, 05:31 GMT
Last edited by freswa (frederik) - Saturday, 11 June 2022, 12:40 GMT
|
Details
Description:
Impossible to run Valgrind without an internet connection. Valgrind uses `debuginfod` to load debug symbols over the internet. No way to install debug symbols offline either. Additional info: * package version(s) $ pacman -Q valgrind glibc valgrind 3.19.0-4 glibc 2.35-6 Steps to reproduce: 1. Turn off internet 2. $ echo "int main() {}" > test.c $ clang test.c -o test $ valgrind ./test ==2165074== Memcheck, a memory error detector ==2165074== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al. ==2165074== Using Valgrind-3.19.0 and LibVEX; rerun with -h for copyright info ==2165074== Command: ./test ==2165074== valgrind: Fatal error at startup: a function redirection valgrind: which is mandatory for this platform-tool combination valgrind: cannot be set up. Details of the redirection are: valgrind: valgrind: A must-be-redirected function valgrind: whose name matches the pattern: strlen valgrind: in an object with soname matching: ld-linux-x86-64.so.2 valgrind: was not found whilst processing valgrind: symbols from the object with soname: ld-linux-x86-64.so.2 valgrind: valgrind: Possible fixes: (1, short term): install glibc's debuginfo valgrind: package on this machine. (2, longer term): ask the packagers valgrind: for your Linux distribution to please in future ship a non- valgrind: stripped ld.so (or whatever the dynamic linker .so is called) valgrind: that exports the above-named function using the standard valgrind: calling conventions for this platform. The package you need valgrind: to install for fix (1) is called valgrind: valgrind: On Debian, Ubuntu: libc6-dbg valgrind: On SuSE, openSuSE, Fedora, RHEL: glibc-debuginfo valgrind: valgrind: Note that if you are debugging a 32 bit process on a valgrind: 64 bit system, you will need a corresponding 32 bit debuginfo valgrind: package (e.g. libc6-dbg:i386). valgrind: valgrind: Cannot continue -- exiting now. Sorry. |
This task depends upon
Closed by freswa (frederik)
Saturday, 11 June 2022, 12:40 GMT
Reason for closing: Not a bug
Additional comments about closing: Feel free to download the -debug packages and install them if you need to do offline work. They're not updated by pacman though.
Saturday, 11 June 2022, 12:40 GMT
Reason for closing: Not a bug
Additional comments about closing: Feel free to download the -debug packages and install them if you need to do offline work. They're not updated by pacman though.
https://bugzilla.redhat.com/show_bug.cgi?id=2051971
FYI, you can install debug symbols for glibc via https://america.mirror.pkgbuild.com/core-debug/os/x86_64/glibc-debug-2.35-6-x86_64.pkg.tar.zst. There are more debug packages on *.mirror.pkgbuild.com mirrors [1].
<del>Probably all these tricks should be added to wiki...</del> It's mentioned on wiki https://wiki.archlinux.org/title/Debugging/Getting_traces#Install_debug_packages
[1] https://archlinux.org/news/debug-packages-and-debuginfod/