Перейти к содержанию
    

Создать два выходных файла *.bin

Сделал сборку с двумя ld-файлами.

Причем в первый ld-файл инклюдится второй.

Дважды запускаю линкер.

Первый раз со всеми объектными файлами, в том числе и с теми, в которых содержатся шрифты и картинки и с первым ld-файлом.

Второй раз запускаю только с объекными файлами содержащими шрифты и картинки и второй ld-файл. 

В результате получаю два ELF-файла.

Один для всего сразу, второй - только для шрифтов и картинок.

И опять дважды запускаю objcopy.

Первый раз с ключом --remove-section=.font для первого elf-файла, который содержит все превсе.

Второй раз для второго elf-файла, который содержит только шрифты и картинки.

В итоге получаю два bin-файла. Один содержаций только приложение и предназначенный для первого банка памяти.

Второй содержащий только шрифты и картинки и предназначенный для вторго банка пямяти.

В результате не приходиться применять сторонние утилиты, а только те, что входят в паке компилятора.

В железе пока не проверял, но по просмотру файлов lss и map вроде все правильно раскладывается и используется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как-то сложно получилось. А нельзя ли обойтись одним проходом?

Сначала с ключом --remove-section=.font получить бинарник для первого банка, потом с ключом --only-section=.font - для второго?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 minutes ago, AHTOXA said:

Как-то сложно получилось. А нельзя ли обойтись одним проходом?

Сначала с ключом --remove-section=.font получить бинарник для первого банка, потом с ключом --only-section=.font - для второго?

Да. сложновато.

Только, когда просматривал доступные ключи для objcopy, не обратил внимани (или просто проглядел) предлагаемый вами ключ --only-section.

Теперь с ним конечно все упростится )))

Попробую !

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 2/9/2020 at 8:26 PM, AHTOXA said:

Как-то сложно получилось. А нельзя ли обойтись одним проходом?

Сначала с ключом --remove-section=.font получить бинарник для первого банка, потом с ключом --only-section=.font - для второго?

Попробовал собрать проект предложенным вами способом.

Все отлично собирается. Но в железе опять так и не проверил. Проект домашний, для души ))).

Получается, если бы я сразу ключик --only-section= заметил, то и вопроса бы не возникло )))

Спасибо всем за помощь !!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, нет худа без добра, теперь кто-то ещё узнал про этот ключик (в том числе и я :-))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...