LINUX.ORG.RU

История изменений

Исправление AiFiLTr0, (текущая версия) :

Т.е. по сути пилишь линукс для МКшек?

Нет, просто открутил от линуксового ядра крайне удобный инструмент (kconfig), и заточил его под «голое железо». Makefile'ы и то все переписал. Из линукса там разве что sizes.h и макросы типа ARRAY_SIZE

Ну, мне хватает за глаза ST'шных библиотек. Точнее даже сказать: их слишком много.

Ну там они и есть. В menuconfig'е выбираешь что из них тебе надо. Разве что опционально можешь вкатить туда lwip. Благо стм32 тянет на ура.

Боюсь, когда все до кучи соберу, придется конкретно кромсать библиотеки, оставляя лишь то, что нужно. Почему-то даже при gcc -Os кое-какой мусор пролезает.

-Os только определяет с какими оптимизациями будет собираться код. Не более. Он не удаляет неиспользуемые функции.
Кури доку, там есть опции для убирания «мертвого» невызываемого кода. Надо их передавать при сборке объектников, а потом при линковке давать еще. что-то типа gc-sections.
В случае antares: make menuconfig
и в настройках тулчейна галочку «Remove dead code».

Исходная версия AiFiLTr0, :

Т.е. по сути пилишь линукс для МКшек?

Нет, просто открутил от линуксового ядра крайне удобный инструмент (kconfig), и заточил его под «голое железо». Из линукса там разве что sizes.h и макросы типа ARRAY_SIZE

Ну, мне хватает за глаза ST'шных библиотек. Точнее даже сказать: их слишком много.

Ну там они и есть. В menuconfig'е выбираешь что из них тебе надо. Разве что опционально можешь вкатить туда lwip. Благо стм32 тянет на ура.

Боюсь, когда все до кучи соберу, придется конкретно кромсать библиотеки, оставляя лишь то, что нужно. Почему-то даже при gcc -Os кое-какой мусор пролезает.

-Os только определяет с какими оптимизациями будет собираться код. Не более. Он не удаляет неиспользуемые функции.
Кури доку, там есть опции для убирания «мертвого» невызываемого кода. Надо их передавать при сборке объектников, а потом при линковке давать еще. что-то типа gc-sections.
В случае antares: make menuconfig
и в настройках тулчейна галочку «Remove dead code».