Спецификация файла карты? - PullRequest
3 голосов
/ 10 июня 2010

Создаю инструмент отладчика.Мне нужна спецификация структуры файла MAP для компилятора GCC.Чтобы узнать, как отображается память для разных переменных разных типов данных (класс, внутренний класс, статический, статический констант, внешний, шаблон, typedef спецификация переменных в файле MAP)А также я хочу знать, как символы добавляются в различные переменные для дифференциации в файле MAP.Скажи мне, как продолжить.

1 Ответ

0 голосов
/ 11 марта 2011

Не думайте, что вам нужно понимать подробный формат файла MAP, -Wl и --print-map должно быть достаточно для получения читаемых текстовых картографических данных от компилятора.

$ cat x.c | grep alpha
int alpha = one;
  int c = do_operation(alpha, b);
  printf( "%d op %d = %d\n", alpha, b, c);

$ g++ -Wl,--print-map ./x.c  | grep -P "(alpha|printf)"
                0x00000000080483f0                printf@@GLIBC_2.0
                0x000000000804a018                alpha

ВышеВы можете видеть, что xc содержит объявление переменной "alpha", а также использует "printf".И, как вы можете видеть, адреса доступны через --print-map paramater

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...