Вроде, не все так плохо у Eclipse. Менеджер проекта действует в
рамках заданного. Там везде всё настраивается. По сути, я грубо
вмешиваюсь в работающую и неплохо настроенную систему. Содержимое
папок компилятора, между вашей сборкой и сборкой ARM, различается.
И, уже хотя бы это, оправдывает отказ компиляции в Eclipse. В проекте лежит папка system, в которой и HAL, и заголовочные файлы ядер, и CMSIS. Всё было добавлено плагином Eclipse Embedded CDT автоматически при создании проекта из шаблона. Системные же библиотеки, берутся из папки компилятора.
Предыдущая ваша сборка работала (см. ссылку) но было предупреждение. Оно тогда и не позволило мне использовать компилятора с ключом -Werror, Поэтому оставил тогда Армовский GCC.
https://caxapa.ru/1355427.html
Насчёт сборки вручную, своим makefile. Увы. Не постиг я ещё, не то, чтобы make, как такового, а как, откуда подключать библиотеки. Что из каких папок? В этом плане Eclipse для меня был своего рода Windows'ом в разработке. Нашел удачный шаблон - заработало. Начинал с gcc 9. Не без труда удалось обновить компилятор до сборки ARM 12.3.
Шаг влево, шаг вправо - и получай десятки предупреждений. А ещё чтобы отладка заработала да printf через семихостинг.
Сейчас проект до релиза дошел, компилятор менять не буду. Но к следующему релизу хотел бы попробовать. Поищу логи, если удастся выкроить время.