Fiz o download das fontes do tronco Valgrind e o construí para uso em um sistema Linux embutido (Montavista Linux) alimentado por um ARM926 (arquitetura ARMv5t). Tudo correu bem até que eu tentei executá-lo para verificar algum aplicativo que fiz; Valgrind me diz:
"valgrind: falha ao iniciar a ferramenta 'memcheck' para a plataforma 'arm-linux': Esse arquivo ou diretório não existe".
Tentar executar qualquer outra ferramenta dá a mesma mensagem. Para o make install , usei a opção --prefix apontando para o sistema de arquivos do sistema incorporado que é montado através do NFS (por exemplo --prefix = / home / NFS_mounted / opt / valgrind). Eu verifiquei o local da instalação e o diretório lib contém as ferramentas adequadas; Também verifiquei o arquivo pkgconfig correspondente para Valgrind e parece que está tudo bem, então estou meio sem noção no momento e não consigo descobrir o que está acontecendo de errado. 2 perguntas:
- É correto usar / instalar um Valgrind de compilação cruzada como esse? Talvez eu esteja fazendo algo errado em relação à instalação, ou talvez exista algo que esteja faltando no sistema host (como gdb / gdbserver).
- Alguém já tentou executá-lo em arquiteturas ARM? Estou ciente de que o suporte é relativamente recente, por isso estou me perguntando se poderia obter resultados decentes.
fonte
Coloque em VALGRIND_LIB o diretório pai do diretório amd64-linux. Por exemplo:
export VALGRIND_LIB=/u/gallinar/downloaded/valgrind-3.2.3/.in_place
funcionou para mim hoje :).
fonte
.in_place
da pasta.VALGRIND_LIB precisa estar apontando para a pasta que possui a ferramenta memcheck e outras bibliotecas dependentes x compiladas
fonte