Я скачал исходники из ствола Valgrind и собрал его для использования во встроенной системе Linux (Montavista Linux), работающей на ARM926 (архитектура ARMv5t). Все шло хорошо, пока я не попытался запустить его, чтобы проверить какое-то приложение, которое я сделал; Вальгринд говорит мне:
msgstr "valgrind: не удалось запустить инструмент 'memcheck' для платформы 'arm-linux': такого файла или каталога нет".
Попытка запустить любой другой инструмент дает то же сообщение. Для make install я использовал опцию --prefix, указывающую на файловую систему встроенной системы, которая монтируется через NFS (например, --prefix = / home / NFS_mounting / opt / valgrind). Я проверил место установки и каталог lib там содержит соответствующие инструменты; Я также проверил соответствующий файл pkgconfig для Valgrind, и, кажется, все в порядке, так что я сейчас немного невежественен и не могу понять, что происходит не так. 2 вопроса:
- Правильно ли использовать / устанавливать кросс-скомпилированный Valgrind? Возможно, я что-то не так делаю в отношении установки, или, может быть, что-то, связанное с хост-системой, мне не хватает (например, gdb / gdbserver).
- Кто-нибудь пробовал запускать его на архитектурах ARM? Я знаю, что поддержка довольно недавно, поэтому мне интересно, смогу ли я получить достойные результаты.
источник
Поместите в VALGRIND_LIB родительский каталог каталога amd64-linux. Например:
export VALGRIND_LIB=/u/gallinar/downloaded/valgrind-3.2.3/.in_place
у меня сегодня сработало :).
источник
.in_place
в папке.VALGRIND_LIB должен указывать на папку, в которой есть инструмент memcheck и другие зависимые x скомпилированные библиотеки
источник