Мне порекомендовали gperftools просто и быстро профилировать мой код. Кроме того, интеграция -lprofiler уже была сделана в CMAKE кода, который я получил. Теперь, когда я перенес исходный код на Jetson TX1 и он хорошо работал, я попытался использовать gperftools.
К сожалению, ошибки сегментации начинают появляться, как только я запускаю свою программу с perftools
env CPUPROFILE=./lts.prof /mybin
Я прочитал документацию, и они говорят об использовании правильного libunwind для 64-битного Linux. К сожалению, данная библиотека (0.99 libunwind, http://download.savannah.gnu.org/releases/libunwind/libunwind-0.99-beta.tar.gz) похоже не нравится платформа Tegra.
Прежде всего, существует проблема с config.guess, которую мне пришлось изменить с помощью файла, расположенного в / usr / share / automake * /.
configure: error: cannot guess build type; you must specify one
Тогда это идет не так, как это:
config.status: error: ./include/libunwind-aarch64.h: file not found
Я пытался использовать главное дерево, потому что они добавили AARCH64 (который появился в сообщениях об ошибках), но затем я получаю другие сообщения:
aarch64/is_fpreg.c:31:21: error: 'UNW_AARCH64_V0' undeclared (first use in this function)
return (regnum >= UNW_AARCH64_V0 && regnum <= UNW_AARCH64_V31);
aarch64/is_fpreg.c:31:49: error: 'UNW_AARCH64_V31' undeclared (first use in this function)
return (regnum >= UNW_AARCH64_V0 && regnum <= UNW_AARCH64_V31);
Задача ещё не решена.
Других решений пока нет …