Как определить, работает ли под Valgrind в файле make или сценарии оболочки? - PullRequest
0 голосов
/ 12 декабря 2008

Мне нужно определить, работает ли мой Makefile под valgrind (косвенно, используя valgrind --trace-children = yes), я знаю, как это сделать из C, но я не нашел способа сделать это из скрипта,

Предыдущие ответы работают только на Linux. Для Mac OS X я собираюсь найти VALGRIND_STARTUP_PWD в среде, если у кого-то нет более хорошей идеи.

1 Ответ

3 голосов
/ 12 декабря 2008

из снаряда:

grep -q '/valgrind' /proc/$$/maps && echo "valgrindage"

Определяет, присутствуют ли предустановленные библиотеки valgrind в адресной карте процесса. Это разумно эффективно, но если вам случится иметь библиотеку, не относящуюся к valgrind, которая разделяет прозвище '/ valgrind', тогда вы получите ложное срабатывание (маловероятно).

[Я изменил шаблон grep с vg_preload на / valgrind, так как тестирование в Debian / Ubuntu показало, что имя библиотеки было другим, в то время как совпадение с каталогом valgrind, скорее всего, будет успешным.]

...