SAIL-IMX7DLinux开发环境搭建与内核编译 点击:394 | 回复:0



dianyudianzi

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:12帖 | 0回
  • 年度积分:0
  • 历史总积分:62
  • 注册:2019年7月10日
发表于:2019-07-10 10:21:41
楼主

本文介绍了在虚拟机上SAIL-IMX7D Linux开发环境搭建与内核编译搭建开发环境时要注意编译器版本,安装完编译器后设置环境变量,以便之后编译内核。

主机平台:ubuntu14.04.5

目标平台:SAIL-IMX7D核心板

虚拟机:VMware-workstantion-full-12.5.5

编译工具链:gcc-linaro-arm-linux-gnueabihf-

 

1 Linux开发环境搭建

1.1安装编译器

IMX7D Linux系统常用编译器的版本是gcc-linaro-arm-linux-gnueabihf-4.9。

编译器的安装包在/光盘/linux/交叉编译器/

gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz压缩包是交叉编译器安装包。将安装包拷贝到Ubuntu的 /dianyu 目录下。

如果Ubuntu没有/dianyu目录,可以使用 #mkdir  /dianyu 创建一个新目录。修改 /dianyu 权限,命令:  #chmod 777 /dianyu

Ubuntu中新建目录 /usr/local/arm,命令 #mkdir -p /usr/local/arm

gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz解压缩到/usr/local/arm命令

#tar xvf /dianyu/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz -C /usr/local/arm

如图所示:

图片13.png 

上述命令执行完成后,即可完成编译器安装。同时设置一下环境变量,执行命令:

#export PATH=/usr/local/arm/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/:$PATH

 

1.2设置、升级开发环境依赖库

/光盘/通用工具/工具脚本 setup-package-install.sh文件拷贝到Ubuntu中的 /dianyu 目录下,如图所示:

图片14.png

修改/setup-package-install.sh权限命令#chmod 777 setup-package-install.sh

命令: #./setup-package-install.sh ,如图所示:

图片15.png

报错bash: ./setup-package-install.sh: /bin/sh^M: bad interpreter: No such file or directory执行vi setup-package-install.sh回车

图片16.png

将每行后面的^M删掉(若不报错可直接进行下一步)删完后保存退出。

图片17.png

 

 


重新执行./setup-package-install.sh 选择Y,回车,如图所示:图片18.png

 

这里直接回车,默认是Yes。如图所示:

图片19.png

 

正在从源服务器下载配置环境的安装包。如图所示:

图片20.png

安装完成后,如图所示:

图片21.png

若安装失败,则输入命令:# apt-get update

然后再重新输入命令:#./setup-package-install.sh 进行安装。

 

 

2 IMX7D内核编译

/光盘/linux/源代码/sail-imx7d-linux-4.1.15.tar.gz 拷贝到Ubuntu系统中的/dianyu 目录中。

在终端中执行命令:#cd  /dianyu

然后执行解压缩命令:#tar zxvf sail-imx7d-linux-4.1.15.tar.gz,将sail-imx7d-linux-4.1.15.tar.gz解压缩到 /dianyu 目录下。解压工作完成后,在 /dianyu目录下自动生成 sail-imx7d-linux-4.1.15 目录。sail-imx7d-linux-4.1.15 目录就是linux内核源码了。

图片22.png

 

使用命令 #cd  sail-imx7d-linux-4.1.15

进入sail-imx7d-linux-4.1.15目录

图片23.png 

 

 

 

执行清理编译产生的中间文件。命令: #make clean

编译内核。命令:#make zImage ZIMAGE_LOADADDR=0x10008000

如图所示:

图片24.png

正在编译,如下图所示:

图片25.png 

 

 

编译报错(如果不报错,可跳过此步,若出现其他错误,请自行百度),如下图所示:

图片26.png

报错提示为缺少lzop,命令apt-get install lzop,安装lzop,如下图所示:

图片27.png


安装完成后,重新编译内核,成功,如下图所示:

图片28.png

编译dts。命令:#make sail-imx7d.dtb,如下图所示:

 图片29.png

 

编译成功如图所示:

图片30.png

其中zImage、sail-imx7d.dtb即为linux系统下的内核源码。

 

3总结

搭建linux开发环境时主要的问题是/setup-package-install.sh文件,首先是权限问题,更改其权限为777,其次是在拷贝到虚拟机里时会在每一行后面多出^M,只有使用vi打开才能看到。配置好环境变量后,编译内核源码一般不会出现问题,若出现问题则根据实际情况寻找解决办法。




热门招聘
相关主题

官方公众号

智造工程师