我是一个没有经验的linux和rtems用户试图在Linux Mint主机上构建和配置rtems 4.11环境。我希望这个环境能够为ERC32芯片组编译RTEMS应用程序。我遵循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 Build FAILED”
我使用了命令:
../source-builder/sb-set-builder --list-bset
在列表中出现:
5 / RTEMS-sparc.bset 6 / RTEMS-sparc.b
组
所以我发现了另一个与此相关的问题:no build set file found 4.11/rtems-sparc on 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-something”。
我尝试使用“sparc-rtems5-gcc”编译一个hello_world.c示例,但它缺少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 Tue Jan 29 18:03:48 UTC 2019 x86_64 x86_64 x86_64 GNU / Linux
简短回答:如果要构建RTEMS 4.11工具链,则必须检查源构建器的4.11分支。在rtems源构建器目录中尝试git checkout -t origin/4.11
。在那之后,../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。
3)4.11 git目录多年来一直在变化?即使它已经老了。
4.11已移至分支机构。
4)有人可以解释如何正确构建rtems 4.11系统或至少推荐一些指南?
您应该能够遵循文档的不同之处,即必须使用所有存储库的4.11分支。
值得注意的是,我发现文档对初学者来说太混乱了。环境有三种不同的解释,其中两种在用户指南(快速入门和安装部分)中,另一种在Source Builder文档中。他们的说明也不同。所以我不知道每个人应该遵循哪一个或哪个部分。
我必须说实话:我还没有开始使用RTEMS文档。所以我不确定它的质量。我知道至少有一些要点已在当前(第5版)文档中得到解决。例如,已删除源构建器手册。