工控论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 0|回复: 0

SAIL-IMX7D Linux开发环境搭建与内核编译

[复制链接]

10

主题

10

帖子

0

积分

新手上路

Rank: 1

工控币
0
发表于 2019-7-10 16:30:56 | 显示全部楼层 |阅读模式


本文介绍了在虚拟机上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
如图所示:
图片156.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 目录下,如图所示:
图片157.png
修改/setup-package-install.sh权限,命令#chmod 777 setup-package-install.sh
命令: #./setup-package-install.sh ,如图所示:
图片158.png
报错bash: ./setup-package-install.sh: /bin/sh^M: bad interpreter: No such file or directory执行vi setup-package-install.sh,回车
图片159.png
将每行后面的^M删掉(若不报错可直接进行下一步)。删完后保存退出。
图片160.png
重新执行./setup-package-install.sh 选择Y,回车,如图所示:
图片161.png
这里直接回车,默认是Yes。如图所示:
图片162.png
正在从源服务器下载配置环境的安装包。如图所示:
图片163.png
安装完成后,如图所示
图片164.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内核源码了。
图片165.png
使用命令 #cd  sail-imx7d-linux-4.1.15
进入sail-imx7d-linux-4.1.15目录
图片166.png
执行清理编译产生的中间文件。命令: #make clean
编译内核。命令:#make zImage ZIMAGE_LOADADDR=0x10008000
如图所示:
图片167.png
正在编译,如下图所示:
图片168.png
编译报错(如果不报错,可跳过此步,若出现其他错误,请自行百度),如下图所示:
图片169.png

报错提示为缺少lzop,命令apt-get install lzop,安装lzop,如下图所示:
图片170.png
安装完成后,重新编译内核,成功,如下图所示:
图片171.png

编译dts。命令:#make sail-imx7d.dtb,如下图所示:
图片172.png
  
编译成功如图所示:
图片173.png
其中zImage、sail-imx7d.dtb即为linux系统下的内核源码。
3总结
搭建linux开发环境时主要的问题是/setup-package-install.sh文件,首先是权限问题,更改其权限为777,其次是在拷贝到虚拟机里时会在每一行后面多出^M,只有使用vi打开才能看到。配置好环境变量后,编译内核源码一般不会出现问题,若出现问题则根据实际情况寻找解决办法。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|工控技术网 |网站地图

GMT+8, 2019-9-15 16:02

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表