Как правильно построить среду RTEMS 4.11 в Linux Mint
Я неопытный пользователь Linux и rtems, пытающийся создать и настроить среду rtems 4.11 на хосте Linux Mint. Я хочу, чтобы эта среда компилировала приложение RTEMS для чипсета ERC32. Я следую инструкциям, данным в версии 4.11 Руководства RTEMS Source Builder. Я сделал предложенные шаги, но когда дело доходит до команды здания:
../source-builder/sb-set-builder --log=l-sparc.txt \ <1>
--prefix=$HOME/development/rtems/4.11 \ <2>
4.11/rtems-sparc
это терпит неудачу и возвращает:
"Rtems Source Builder - Set Builder, 5 (35c533f545c8) Набор сборки: 4.11/ ошибка rtems-sparc: файл набора сборки не найден: 4.11/rtems-sparc.bset Ошибка сборки"
Я использовал команду:
../source-builder/sb-set-builder --list-bset
в списке появляется:
5 / rtems-sparc.bset
6 / rtems-sparc.b
задавать
Поэтому я нашел еще один вопрос, связанный с этим: файл набора сборки не найден 4.11 / rtems-sparc на rtems (VB)
Ответ говорит использовать следующую команду:
../source-builder/sb-set-builder \
--log=1-sparc.txt \
--prefix=${HOME}/rtems-4.11-work/tools 5/rtems-sparc
обратите внимание, что 4.11 был заменен на 5. Я использовал эту команду, и сборка сработала, однако все исполняемые файлы теперь похожи на "sparc-rtems5-thing".
Я попытался скомпилировать пример hello_world.c с помощью "sparc-rtems5-gcc", но в нем отсутствует rtems.h
Я думал, что после этапов сборки все, включая зависимости, будет в соответствующих директориях, и компилятор распознает это. Кроме того, я искал файл rtems.h и не нашел его ни в одной части системы.
После всей истории у меня есть несколько вопросов:
1) Хорошо или технически целесообразно заменить 4.11 на 5 на этом этапе? Учитывая, что якобы у меня есть среда 4.11.
2) Что это за 5 и 6 каталогов, каждый из которых является sparc bset?
Почему два sparc bsets?
3) Изменялись ли каталоги 4.11 git с годами? Хотя он старый.
4) Может ли кто-нибудь объяснить, как правильно построить систему rtems 4.11, или хотя бы порекомендовать какое-нибудь руководство?
Стоит отметить, что я нашел документацию слишком запутанной для начинающего. Существует три различных объяснения среды, два в руководстве пользователя (разделы, посвященные быстрому запуску и установке) и одно в документации по Source Builder. Также они отличаются инструкциями. Так что я не знаю, какой или какой части каждого следовать.
мой uname -a
вывод команды:
Linux michel-COM 4.15.0-45-generiC#48~16.04.1-Ubuntu SMP Вт 29 января 18:03:48 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
1 ответ
Сначала краткий ответ: если вы хотите собрать набор инструментов RTEMS 4.11, вы должны проверить ветку 4.11 исходного компоновщика. Пытаться git checkout -t origin/4.11
в каталоге компоновщика исходного кода rtems. После этого ../source-builder/sb-set-builder --list-bsets
следует перечислить 4.11/rtems-sparc.bset
,
Теперь по четырем вопросам:
1) Хорошо или технически целесообразно заменить 4.11 на 5 на этом этапе? Учитывая, что якобы у меня есть среда 4.11.
Если вам нужен набор инструментов 4.11, вы не должны заменять 4.11 на 5. Вместо этого используйте ветки релиза 4.11.
2) Что это за 5 и 6 каталогов, каждый из которых является sparc bset? Почему два sparc bsets?
Текущая версия RTEMS для разработки - 5. Я бы рекомендовал использовать RTEMS 5 для большинства новых разработок. В целом, версия для разработки работает достаточно стабильно, и большинство известных мне проектов используют снимок этой версии. Это также лучшая поддержка со стороны сообщества.
6 - только экспериментальная версия набора инструментов. В то время как 5 использует версии gcc (большую часть времени), 6 автоматически обновляется до снимков. См. https://lists.rtems.org/pipermail/devel/2018-December/023954.html декабря/ 023954.html, чтобы узнать, как это было создано.
3) Изменялись ли каталоги 4.11 git с годами? Хотя он старый.
4.11 был перенесен в филиалы.
4) Может ли кто-нибудь объяснить, как правильно построить систему rtems 4.11, или хотя бы порекомендовать какое-нибудь руководство?
Вы должны быть в состоянии следовать документации с той разницей, что вы должны использовать ветки 4.11 всех репозиториев.
Стоит отметить, что я нашел документацию слишком запутанной для начинающего. Существует три различных объяснения среды, два в руководстве пользователя (разделы, посвященные быстрому запуску и установке) и одно в документации по Source Builder. Также они отличаются инструкциями. Так что я не знаю, какой или какой части каждого следовать.
Я должен быть честным: я не начал свою работу RTEMS с документацией. Так что я не совсем уверен в его качестве. Я знаю, что по крайней мере некоторые из пунктов были рассмотрены в текущей (версия 5) документации. Например, руководство по сборке исходного кода было исключено.