Ядро Linux определяет в своем коде множество макросов, эти макросы имеют многоуровневую структуру, которую сложно расширить вручную. Итак, есть ли какой-нибудь инструмент, который поможет расширить эти макросы?
Я знаю, что gcc -E может расширять макросы, но расширить большую кодовую базу ядра (я думаю) невозможно.
Я хочу найти инструмент или метод для расширения макроса, когда мне понадобится.
Я также попробовал GDB (с эмулятором qemu, запускающим Linux), чтобы расширить макрос.
Но возникла проблема при добавлении KCFLAGS="-gdwarf-2 -g3" (gdb нужна дополнительная информация об отладке) в сборку ядра.
Он может скомпилировать все файлы ядра c, но не может связать файл *.a на vmlinux.o, чтобы vmlinux.
Т.е. последовательность сборки ядра не удалась на этапе компоновки.
Я понятия не имею об этой ошибке.
Итак, есть ли какой-нибудь инструмент или метод для расширения макросов в Linux?
Спасибо за ваши идеи.
Подробнее здесь: https://stackoverflow.com/questions/784 ... g-the-code
Мобильная версия