Execute este comando no seu dispositivo de destino
export VALGRIND_LIB=~/valgrind/lib/valgrind/
onde ./valgrind
é o caminho do diretório instalado (fornecido em ./configure
)
Eu fiz o download dos fontes do tronco do Valgrind e construí-o para uso em um sistema Linux embarcado (Montavista Linux) desenvolvido por um ARM926 (arquitetura ARMv5t). Tudo correu bem até que tentei executá-lo para verificar algum aplicativo que fiz; Valgrind me diz:
"valgrind: falha ao iniciar a ferramenta 'memcheck' para a plataforma 'arm-linux': Nenhum arquivo ou diretório".
Tentar executar qualquer outra ferramenta fornece a mesma mensagem. Para make install eu usei a opção --prefix apontando para o sistema de arquivos do sistema embarcado 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 apropriadas; Eu também verifiquei o arquivo pkgconfig correspondente para o Valgrind e ele parece estar OK, então estou meio que ignorante agora e não consigo descobrir o que está errado. 2 perguntas:
Execute este comando no seu dispositivo de destino
export VALGRIND_LIB=~/valgrind/lib/valgrind/
onde ./valgrind
é o caminho do diretório instalado (fornecido em ./configure
)
O problema é que 'valgrind' está procurando por um executável diferente para executar a verificação real. Ele usa o caminho de instalação que você especificou quando o configurou, que não é o mesmo caminho do destino.
Você deve ser capaz de confirmar isso criando um link simbólico / home / NFS_montado no seu alvo que aponta para '/'.
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:).