airmax: (Default)
собственно, продолжение http://www.livejournal.com/users/airmax/60695.html#cutid1

во-первых, никто не отменял чтение документации перед употреблением системных функций: )

в-третьих, для нормального употребления, рекомендуется компилировать со следующими ключами:
g++ -g -fPIC -O -rdynamic

и кормить порожденный лог утилитам c++filt или addr2line.
первая делает demangle имени C++ функции/метода.
вторая берет адрес в бинарнике и пытается получить по нему имя файла и номер строки

собственно, ловушка на слонопотама теперь выглядит так: )
А теперь, внимание, вопрос: кто мне сможет объяснить, почему когда perl gSTLFilt.pl подается на вход строчка
"CDbImpl::SelectMap(char const* (*) [2], ...", выдается "CDbImpl::SelectMap(char const errors.log backtrace.log gSTLFilt.pl ..."

То есть, какое-то нездоровое поведение перла, видимо - первый "*" разворачивает в имена всех файлов в текущем каталоге. Как этого избежать?

Update: все неправы, ха-ха-ха. Точнее, более всего прав Бреслав - двойные кавычки нужно убрать. Только нужно не заменить их все на одинарные - это тут просто не прокатит, а перед `addr2line, и, соответственно, после gSTLFilt.pl ` - убрать \".

Profile

airmax: (Default)
airmax

April 2011

S M T W T F S
      12
345 6 7 89
10 11 12 131415 16
17181920212223
24252627282930

Syndicate

RSS Atom

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 21st, 2017 10:38 pm
Powered by Dreamwidth Studios