Официальный форум СВД Встраиваемые Системы
24 Сентября, 2017, 00:44:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Valgrind для QNX и КПДА  (Прочитано 732 раз)
Игорь Рондарев
Сотрудник СВД ВС
Опытный пользователь

Сообщений: 103


Сотрудник СВД ВС


WWW
« : 12 Декабря, 2016, 16:09:47 »

Valgrind для QNX и КПДА

Компания «СВД Встраиваемые Системы» предлагает разработчикам приложений для QNX и ЗОСРВ «Нейтрино» двоичную сборку отладочного инструментария Valgrind.
Инструментарий Valgrind включает в себя широкий перечень средств отладки и профилирования, позволяющих анализировать разрабатываемые приложения в контексте их работы с динамической памятью, межпоточной синхронизацией, кэш-памятью и т.д.

Поддерживаемые вычислительные архитектуры: x86 и ARMv7.

Данная сборка основана на исходном коде инструментария Valgrind, размещённом на ресурсе community.qnx.com (версия продукта: 3.11, ревизия SVN: 25)

Установка
Предусмотрены два варианта установки:

  • Непосредственно на целевую машину
    Необходимо распаковать архив, содержащий компоненты Valgrind, на целевую машину и установить соответствующее значение переменной окружения VALGRIND_LIB.
    (привязка к имени каталога отсутствует, т.е. распаковывать содержимое архива можно в любой подходящий каталог, или же, например, подключать по протоколу NFS с внешнего ресурса).

    Пример:
    # mkdir -p /opt/valgrind
    # cd /opt/valgrind

    (для x86)
    # tar xf /path/to/valgrind-3.11r25-qnx650-<дата>.tar.gz x86/
    # export VALGRIND_LIB=/opt/valgrind/x86/usr/lib/valgrind
    # export PATH=$PATH:/opt/valgrind/x86/usr/bin

    (для ARMv7)
    # tar xf /path/to/valgrind-3.11r25-qnx650-<дата>.tar.gz armle-v7/
    # export VALGRIND_LIB=/opt/valgrind/armle-v7/usr/lib/valgrind
    # export PATH=$PATH:/opt/valgrind/armle-v7/usr/bin

    Запуск:
    # valgrind --tool=memcheck /ваше/приложение

  • NEW! С интеграцией в QNX SDP (предполагает использование QNX Momentics IDE версии 7.0)
    • Для пользователей Linux

      Пример:
      # cd $QNX_TARGET
      # tar xf /path/to/valgrind-3.11r25-qnx650-<дата>.tar.gz

    • Для пользователей Windows
      В ОС Windows для распаковки архивов *.tar.gz следует использовать утилиту tar.exe из комплекта разработчика QNX SDP. При этом путь к распаковываемому архиву необходимо указывать в том же формате, что и на *nix-системах (т. е. «/диск/путь/к/файлу.tar.gz» вместо стандартного для ОС семейства Windows синтаксиса «диск:\путь\к\файлу.tar.gz»)

      Пример:
      C:\> chdir %QNX_TARGET%
      C:\QNX650\......> \path_to_QNX_HOST\usr\bin\tar.exe xf /path/to/valgrind-3.11r25-qnx650-<дата>.tar.gz


    Запуск из QNX Momentics IDE 7.0:
    Приложение (проект QNX C/C++ Application) -> Run As -> C/C++ QNX Application Configuration.. -> Tools -> Valgrind
    Важно: при отладочном запуске приложения из среды QNX Momentics необходимо снять отметку "Strip debug information before uploading" в cоответствующей конфигурации запуска (Run Configuration->Upload), иначе информация о соответствии ошибок в приложении строкам кода будет недоступна.

    Просмотр результатов анализа:
    Инструмент Valgrind (меню Window -> Show View -> Other.. -> Profiling -> Valgrind). Также в файлах исходных кодов приложения будут автоматически расставлены метки, соответствующие предупреждениям анализатора.

Документация
Скачать
Ссылка для скачивания Valgrind для QNX 6.5.0 и ЗОСРВ «Нейтрино» (предварительно необходимо нажать кнопку "Спасибо" или оставить комментарий в данной теме):


« Последнее редактирование: 11 Августа, 2017, 14:50:33 от Игорь Рондарев » Записан

Игорь Рондарев
Сотрудник СВД ВС
Опытный пользователь

Сообщений: 103


Сотрудник СВД ВС


WWW
« Ответ #1 : 07 Апреля, 2017, 12:49:22 »

  • Обновлена сборка Valgrind (файл valgrind-3.11r25-qnx650-20170407.tar.gz; исправлены небольшие недочёты предыдущей сборки)
  • Обновлена инструкция по использованию Valgrind в среде QNX Momentics IDE 7.0
« Последнее редактирование: 05 Мая, 2017, 11:25:16 от Игорь Рондарев » Записан

bap
Интересующийся

Сообщений: 2


« Ответ #2 : 25 Июля, 2017, 13:09:59 »

Здравствуйте!

Установил valgrind-3.11r25-qnx650-20170407.tar.gz на целевую машину:
# mkdir -p /opt/valgrind
cкопировал файл valgrind-3.11r25-qnx650-20170407.tar.gz в каталог /opt/valgrind
# cd /opt/valgrind
# tar xzvf valgrind-3.11r25-qnx650-20170407.tar.gz x86/
# export VALGRIND_LIB=/opt/valgrind/x86/usr/lib
# export PATH=$PATH:/opt/valgrind/x86/usr/bin

Запустил:
# valgrind --tool=memcheck /home/myprog
valgrind: failed to start tool 'memcheck' for platform 'x86-nto': No such file or directory

Хотел просто посмотреть help:
# valgrind --help
valgrind: failed to start tool 'memcheck' for platform 'x86-nto': No such file or directory
или просто узнать версию:
# valgrind --version
valgrind: failed to start tool 'memcheck' for platform 'x86-nto': No such file or directory

Файл memcheck-x86-nto в каталоге /opt/valgrind/x86/usr/lib/valgrind присутствует.
Путь на /opt/valgrind/x86/usr/bin есть.
Переменная VALGRIND_LIB есть.
# uname -a
QNX qnx6 6.5.0 2010/07/09-14:44:03EDT x86pc x86

Подскажите, в чем может быть проблема?
Спасибо.
Записан
Игорь Рондарев
Сотрудник СВД ВС
Опытный пользователь

Сообщений: 103


Сотрудник СВД ВС


WWW
« Ответ #3 : 26 Июля, 2017, 11:40:41 »

Подскажите, в чем может быть проблема?
Добрый день! Да, в инструкцию вкралась опечатка. Вместо
Код:
# export VALGRIND_LIB=/opt/valgrind/x86/usr/lib
должно быть
Код:
# export VALGRIND_LIB=/opt/valgrind/x86/usr/lib/valgrind
Исправили. Спасибо за обратную связь!
Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP © 2002-2017 СВД Встраиваемые Системы.
При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
Valid XHTML 1.0! Valid CSS!
Сайт СВД ВС

В последний раз google посещал эту страницу 23 Сентября, 2017, 07:51:00