嵌入式 Linux 系统开发工具与主机类型全解析
1. 嵌入式系统软件开发特点
嵌入式系统软件开发与工作站或服务器环境下的软件开发有所不同。主要在于目标环境通常与开发所用的主机不同,因此需要进行主机/目标机的设置,即开发者在主机上开发软件,然后将其下载到目标机上进行测试。这种设置包括开发和调试两个方面。不过,利用 Linux 的多架构优势,也可以在主机上对目标应用进行少量或无需修改的测试,虽然并非所有应用都能以此方式测试,但这通常能节省大量时间。
在对目标系统上的任何代码进行测试之前,需要建立主机与目标机的连接,这就像是一条“脐带”,开发者可以通过它与目标系统进行交互,验证所开发的应用是否按预期运行。由于应用通常无法在裸机硬件上运行,所以目标硬件上需要有一个功能完备的嵌入式 Linux 系统。考虑到等待最终目标机设置完成后再测试目标应用往往不现实,因此可以使用开发目标机设置。这种设置的打包方式更为宽松,不需要遵循最终软件包的大小要求,所以开发根文件系统可能会包含比最终根文件系统更多的应用和库,这也允许在开发过程中使用不同类型和更大容量的永久存储设备。
为了实现这样的设置,需要对目标应用和库进行编译,这可以通过配置或构建各种用于交叉开发的编译器和二进制实用工具来完成。利用这些工具,就可以为目标机构建应用,进而搭建用于进一步开发的开发目标机设置。完成这些后,可以使用各种集成开发环境(IDE)来简化项目组件的开发,并使用 CVS、Subversion 和 GIT 等工具来协调开发者之间的工作。
有些开发者鉴于部分嵌入式系统的性能,会选择直接在目标系统上进行所有开发工作。在这种设置中,编译器和相关工具都在目标机上运行,实际上是将主机和目标机集成在一台机器上,类似于传统
超级会员免费看
订阅专栏 解锁全文
1154

被折叠的 条评论
为什么被折叠?



