Запустите valgrind для кросс-скомпилированного исполняемого файла - PullRequest
1 голос
/ 13 января 2020

Я использую Ubuntu 18.04 VM и пытаюсь найти способ valgrind проверить arm-Linux исполняемый файл. Я попытался скомпилировать с локальным gcc, но столкнулся с некоторыми проблемами. Исполняемый файл создается Makefile из проекта. Я попробовал linaro emulator, следуя инструкциям в Интернете, но столкнулся с множеством проблем, по каждой из которых я искал решения в Интернете, но все не удалось. Как я могу valgrind?

Пока я могу проверить программу на утечку памяти, все в порядке. Что я получаю, когда запускаю исполняемый файл valgrind сейчас:

valgrind: не удалось запустить инструмент 'memcheck' для платформы 'arm- linux': такого файла или каталога нет

Сам файл является fyi: nrf52832_xxaa.out: 32-разрядный исполняемый файл ELB ELF, ARM, EABI5 версии 1 (SYSV), статически связан с debug_info, не удален

Я искал в нескольких сообщениях решения, но не смог найти Любые.

Ответы [ 2 ]

2 голосов
/ 13 января 2020

Кросс-компиляция valgrind и выполнение по цели. Других способов нет. Не могу даже использовать qemu для выполнения valgrind.

0 голосов
/ 16 января 2020

Обязательно запускать исполняемый файл на устройстве. Пожалуйста, рассмотрите возможность загрузки предварительно скомпилированного пакета для вашего примера arch из https://packages.debian.org/search?keywords=valgrind, следуйте обязательным зависимостям и установите все на встроенное устройство. Я использую для базы версию в соответствии с установленной версией lib c.

...