Есть несколько основных символов :) Возможно, посмотрите на 'контрольные точки информации' в gdb или
objdump -C -t myprog
, чтобы узнать почему / где.
Используйте cscope для интерактивного поиска объявлений.
ctags -R . && grep -w main tags
[ -x /usr/bin/vim ] && vim +'tj main'
Также может быть полезно, если у вас установлены ctags (и, возможно, vim)
Если все остальное не помогло, сработает грубая сила grep -RIw main .
.Если даже это не помогло, вы должны оказаться с очень странным внешним заголовком #defines или даже (статической) библиотекой с избыточным главным символом.Чтобы перебор поиск идентификатора main
через предварительно обработанные источники:
find -name '*.c' -print0 | xargs -0n1 -iQ cpp -I/usr/include/... -DDEBUG Q Q.ii
find -name '*.c.ii' -print0 | xargs grep -wI main
( заменить -I/usr/include/... -DDEBUG
на соответствующий препроцессор определяет )