一、首先需要下载两套交叉工具链,由于我们在制作根文件系统、以及APP的时候可能还需要使用比较老的交叉工具链,因此需要下载这两套交叉工具链:
1 arm-linux-gcc-4.3.2.tar.bz2 gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi-zhuangzebin.tar.xz
1.1 设置交叉工具链的环境:
1 sudo tar -xvf arm-linux-gcc-4.3.2.tar.bz2 -C /2 tar -xvf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi-zhuangzebin.tar.xz -C /work/system/ 自己创建对应的目录3 切换这两套交叉工具链的方法,在使用的时候设置环境变量4 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin/:/usr/local/arm/4.3.2/bin/ 5 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin/:/work/system/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi/bin/
2、编译uboot
1 export PATH=$PATH:/usr/local/arm/4.3.2/bin/ 切换交叉工具链2 tar -xvf u-boot-1.1.6.tar.bz23 patch -p1 < u-boot-1.1.6_device_tree_for_jz2440.patch 合入100sk的patch4 make 100ask24x0_config5 make
3、编译kernel
1 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin/:/work/system/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi/bin/ 切换交叉工具链2 tar -xvf linux-4.19-rc3.tar.gz3 cp config_ok .config4 make uImage -j4 && make dtbs
编译过程中报了如下的错误:
解决办法安装如下工具:
1 sudo apt-get install libssl-dev u-boot-tools
编译okay的结果:
4、烧录
4.1 将开发板设置成NOR FLASH启动,上电,串口端会有如下的输出信息:
4.2 接上Open JTAG,运行lsusb会有如下输出,证明可以识别到开发板
4.3 在系统启动的时候,进行倒计时的时候,在串口快速按下空格,会出现如下的界面,k,下载内核,t下载对应的设备树,n更新uboot,y下载yaffs根文件系统.