Hej!
Hoppas jag valde rätt forum för denna fråga...
Jag har problem med ett program som kraschar pga ett segmenteringsfel. Programmet består av en sammanslagning från flera användare vilket gör det väldigt svårt att felsöka då jag inte har någon aning om vad som egentligen orsakar kraschen. Gdb ger mig inga svar så därför vill jag testa Valgrind.
Jag lyckas dock inte installera Valgrind riktigt... Min target machine är en Armv7:a (får följande när jag kör uname -a: Linux am335x-evm 3.2.0501010-000045RXX-1.2.0.818 #2 PREEMPT Wed Aug 7 13:48:54 CDT 2013 armv7l unknown) som saknar pakethanterare. Har korskompilerat Valgrind 3.8.1 och kan starta det men får följande fel:
...
==9288== Memcheck, a memory error detector
==9288== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==9288== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
==9288== Command: ./tempo
==9288==
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: memcpy
valgrind: in an object with soname matching: ld-linux.so.3
valgrind: was not found whilst processing
valgrind: symbols from the object with soname: ld-linux.so.3
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: Cannot continue -- exiting now. Sorry.
Så libc6-dbg behövs men jag lyckas inte installera det... Jag har tankat ner paketet från http://www.emdebian.org/crush/search...=&distro=lenny och packat upp det manuellt och överfört till min target machine men får bara detta: /opt/valgrind/bin/valgrind: error while loading shared libraries: /usr/lib/debug/libc.so.6: ELF file OS ABI invalid när jag försöker köra Valgrind då.
Jag är inte den bästa på Linux och behöver verkligen Valgrind. Alla tips om hur man kan installera och köra Valgrind på en Armv7:a tas gladeligen emot!
Hoppas jag valde rätt forum för denna fråga...
Jag har problem med ett program som kraschar pga ett segmenteringsfel. Programmet består av en sammanslagning från flera användare vilket gör det väldigt svårt att felsöka då jag inte har någon aning om vad som egentligen orsakar kraschen. Gdb ger mig inga svar så därför vill jag testa Valgrind.
Jag lyckas dock inte installera Valgrind riktigt... Min target machine är en Armv7:a (får följande när jag kör uname -a: Linux am335x-evm 3.2.0501010-000045RXX-1.2.0.818 #2 PREEMPT Wed Aug 7 13:48:54 CDT 2013 armv7l unknown) som saknar pakethanterare. Har korskompilerat Valgrind 3.8.1 och kan starta det men får följande fel:
...
==9288== Memcheck, a memory error detector
==9288== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==9288== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
==9288== Command: ./tempo
==9288==
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: memcpy
valgrind: in an object with soname matching: ld-linux.so.3
valgrind: was not found whilst processing
valgrind: symbols from the object with soname: ld-linux.so.3
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: Cannot continue -- exiting now. Sorry.
Så libc6-dbg behövs men jag lyckas inte installera det... Jag har tankat ner paketet från http://www.emdebian.org/crush/search...=&distro=lenny och packat upp det manuellt och överfört till min target machine men får bara detta: /opt/valgrind/bin/valgrind: error while loading shared libraries: /usr/lib/debug/libc.so.6: ELF file OS ABI invalid när jag försöker köra Valgrind då.
Jag är inte den bästa på Linux och behöver verkligen Valgrind. Alla tips om hur man kan installera och köra Valgrind på en Armv7:a tas gladeligen emot!
Kommentera