-
- По ссылке человек просто по старинке решает подобный вопрос :) - Ozelot(18.09.2020 08:18, ссылка)
- Тебе уже дали все ответы. Занимался чем? Если речь про ARMCC, то
стоит им написать в поддержку и напрямую обрисовать задачу и
попросить рекомендаий по её решению. Если продукт ворованный, то не
стоит сношать мозг, а взять бесплатный GCC. - fk0(18.09.2020 00:12)
- ок! по GCC можно показать решение с примерами ? Дело не в кейле, я
с удовольствием переползу куда угодно, но для начала нужно
понимание что вопрос будет решен! судя по активности и гуглю, тема
очень скользкая и не факт что с GCC все будет хорошо! - Aleksey_75(18.09.2020 00:18)
- В любом компе с линуксом загружаются динамические библиотеки
скомпилированные GCC. Я сам вручную загружал, правда на MIPS. Но не
велика разница. - fk0(18.09.2020 00:27)
- у мну совсем не комп и совсем не линух .... у мну скромный мк с 64к
озу и 128к флеши! это как бе разные вещи - Aleksey_75(18.09.2020 00:30)
- Нет разницы. Линукс тут не нужен. Динамическую библиотеку загрузить
относительно просто. Для твоего случая уже все детали разжёваны.
Вот с этими опциями собираешь (ещё -shared) в ELF, который
"загружаешь" путём копирования .text куда надо и .data куда
получается. Речь не про секции, а про програмные хедеры -- см.
readelf -a (внутри которых .text и .data). Вообще нужно ли тебе
копировать во flash, может проще в ОЗУ и оттуда запускать? Так
проще (не нужны тогда fk0(69 знак., 18.09.2020 00:35, ссылка)
- опять беспредметный разговор! про не грузить в флешь а работать из
озу совсем смешно! у меня сейчас с фиксироваными адресами на каждый
модуль выделено 256 байт озу и все впритык с основной логикой, этот
вариант я даже не рассматриваю - Aleksey_75(18.09.2020 00:39)
- Что тут беспредметного? За тебя код написать? Что смешного я тоже не понимаю, у первых юниксов было 64кБайта и как-то крутились. Проблема, догадываюсь, в том что "программисты проф. уровня" знают страшное слово "фрагментация" и не используют динамический аллокатор памяти, поэтому у них всё в compile time распределено (когда оно надо, и когда не надо) в итоге нужны титанические объёмы ОЗУ. Тебе уже готовую ссылку на ELF-лоадер давали. Брать как есть не надо, но подсмотреть fk0(224 знак., 18.09.2020 00:46)
- опять беспредметный разговор! про не грузить в флешь а работать из
озу совсем смешно! у меня сейчас с фиксироваными адресами на каждый
модуль выделено 256 байт озу и все впритык с основной логикой, этот
вариант я даже не рассматриваю - Aleksey_75(18.09.2020 00:39)
- Нет разницы. Линукс тут не нужен. Динамическую библиотеку загрузить
относительно просто. Для твоего случая уже все детали разжёваны.
Вот с этими опциями собираешь (ещё -shared) в ELF, который
"загружаешь" путём копирования .text куда надо и .data куда
получается. Речь не про секции, а про програмные хедеры -- см.
readelf -a (внутри которых .text и .data). Вообще нужно ли тебе
копировать во flash, может проще в ОЗУ и оттуда запускать? Так
проще (не нужны тогда fk0(69 знак., 18.09.2020 00:35, ссылка)
- у мну совсем не комп и совсем не линух .... у мну скромный мк с 64к
озу и 128к флеши! это как бе разные вещи - Aleksey_75(18.09.2020 00:30)
- В любом компе с линуксом загружаются динамические библиотеки
скомпилированные GCC. Я сам вручную загружал, правда на MIPS. Но не
велика разница. - fk0(18.09.2020 00:27)
- ок! по GCC можно показать решение с примерами ? Дело не в кейле, я
с удовольствием переползу куда угодно, но для начала нужно
понимание что вопрос будет решен! судя по активности и гуглю, тема
очень скользкая и не факт что с GCC все будет хорошо! - Aleksey_75(18.09.2020 00:18)