Различия между файлами s37 и elf

Я использую встроенную систему. После сборки исходного кода C я получаю много файлов. Имя файла такое же, но расширение другое:

.s37.elf.hex.sig

Какая разница между ними? В основном, в чем разница между.s37 и.elf?

Спасибо, Л.

1 ответ

Это просто разные исполняемые форматы.

.s37 - это один из вариантов формата SREC, это фиксированный текст ascii/line, включая шестнадцатеричный (двоичный)

Этот формат хорошо известен программному обеспечению flash/upload в большинстве встроенных целей.

.elf является исполняемым и линкуемым файлом, продуктом типа линкера gcc или другие коммерческие компиляторы (Windriver, CodeWarrior...).

.elf формат трудно загружать на встроенные цели без преобразования в .SREC с objcopy первый. Одним из основных отличий в содержании является то, что .elf формат может содержать символы отладки, тогда как .srec/.s37 не могу.

Я предполагаю, что ваш набор инструментов делает все это: link: .elf, затем objcopy для преобразования.elf в.s3 для целевой загрузки (потеря информации о символах, если таковая имеется, что требует от вас сохранения .elf файл удобен при отладке вашего приложения на цели, файл SREC содержит только код и данные, без отладки).

Другие вопросы по тегам