Люди, подскажите, пожалуйста, какие есть аналоги Pyrify, CodeGuard под Linux?
Чем можно отловить использование неинициализированных переменных, утечки памяти?
Как можно просчитать время выполнения ф-ций (аналог VTune)?
Re: Какие есть аналоги Pyrify, CodeGuard под Linux?
Здравствуйте, Костенко Андрей Викторович, Вы писали:
КАВ>Добрый день.
КАВ>Люди, подскажите, пожалуйста, какие есть аналоги Pyrify, CodeGuard под Linux? КАВ>Чем можно отловить использование неинициализированных переменных, утечки памяти?
Утечки памяти можно искать утилитой mtrace
1. включить в программу <mcheck.h>
2. задать имя файла трассы % export MALLOC_TRACE=memory.log
3. запустить программу
4. анализировать результат % mtrace my_prog $MALLOC_TRACE
КАВ>Как можно просчитать время выполнения ф-ций (аналог VTune)?
Профайлер gprof
для ее использования нужно установить флаг -pg компилятору
gcc -pg test1.o test2.o -o test
P.S. сам я этими утилитами не разу не пользовался
Re: Какие есть аналоги Pyrify, CodeGuard под Linux?
Здравствуйте, Костенко Андрей Викторович, Вы писали:
КАВ>Добрый день.
КАВ>Люди, подскажите, пожалуйста, какие есть аналоги Pyrify, CodeGuard под Linux? КАВ>Чем можно отловить использование неинициализированных переменных, утечки памяти?
КАВ>Как можно просчитать время выполнения ф-ций (аналог VTune)?
посмотрите valgrind — решает все ваши вопросы, к нему есть масса модулей, вот особо полезный:
cachegrind — модуль для valgrind собственно профайлер.
Также обратите внимание на kcachegrind — kde frontend для cachegrind.
oprofile — низкоуровневый профайлер, работает на уровне ядра, собственно может быть собран как часть ядра, а так же как модуль. В ядре 2.6.х присутствует по умолчанию.