背景
市面上的嵌入式linux开发板厂商提供给客户的开发环境往往是低版本的ubuntu,因为他们没有精力去测试每个版本的ubuntu,一旦某个版本调通了,这个版本就用一直用下去,不会换新的,这主要是考虑到人力成本。
理论上,高版本的ubuntu也是可以搭建好嵌入式linux开发环境的,只不过相比低版本的ubuntu,可能会做更多一些的工作,但总的来说也没有多少内容。
选择高版本的ubuntu的好处是什么呢?答案是,可以更好地支持其他软件或库,比如高版本的opencv就需要高版本的ubuntu才能支持。
开发环境的搭建
搭建嵌入式linux开发环境,主要包含两部分内容:
- 交叉编译工具的安装。
- 开发工具和依赖库的安装,包括必需的和可选的。
这里先说下我的linux源码和交叉编译工具的来源:这两个都是由迅为开发板厂商提供,交叉编译工具包是arm-2009q3.tar.bz2
,linux内核版本为3.0。
我的ubuntu20.04.1 64位是运行在 vmware workstation pro 15 上的虚拟机。
1.交叉编译工具的安装
本质上就是把交叉编译工具解压到某个目录下,然后在PATH环境变量中添加此目录下的bin目录,以便其他应用程序找到交叉编译工具的可执行文件,最后修改linux源码根目录的Makefile里的CROSS_COMPILE
变量,用于指定编译内核的编译器。由于交叉编译工具属于系统开发级的东西,所以把它放在Home下显得不太合适。一般我们