×

构建Linux 4.x + Lubuntu操作系统方案

消耗积分:1 | 格式:rar | 大小:0.5 MB | 2017-10-15

分享资料个

本文参考eewiki上A20-OLinuXino-LIME的系统构建流程,为pcDuino3 Nano Lite交叉编译Mainline U-Boot和Kernel 4.x,并运行Lubuntu 14.04图形桌面。
  兔子使用的交叉编译主机环境为Xeon E5620服务器和Ubuntu Server 14.04 64-bit操作系统,而交叉编译需要的Linaro GCC为32-bit版本,因此需要安装相关32-bit库。
  sudo apt-get update
  sudo apt-get upgrade
  sudo apt-get install libc6:i386 libstdc++6:i386 libncurses5:i386 zlib1g:i386
  下载交叉编译工具,并将环境变量CC设置为编译器的路径和名称前缀。
  wget -c https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
  tar xf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
  export CC=`pwd`/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-
  深入命令查看GCC版本来验证交叉编译工具的配置,如果报错请检查32-bit库是否安装正确。
  ${CC}gcc --version
  编译U-Boot
  从U-Boot官方Git仓库下载U-boot源码。
  git clone git://git.denx.de/u-boot.git
  cd u-boot/
  git checkout v2015.10 -b tmp
  使用pcDuino 3 Nano的配置文件进行配置。
  make ARCH=arm CROSS_COMPILE=${CC} distclean
  make ARCH=arm CROSS_COMPILE=${CC} Linksprite_pcDuino3_Nano_defconfig
  编译U-Boot,这里采用4线程加速编译。
  make ARCH=arm CROSS_COMPILE=${CC} -j4
  编译完成后,在U-Boot目录下会生成u-boot-sunxi-with-spl.bin文件,即为包含了A20初级Bootloader和U-Boot的镜像。
  编译Linux 4.x Kernel
  eewiki上使用了Robert Nelson编写的编译脚本来简化Kernel编译过程。下载编译脚本,并根据需要选择要编译的Kernel版本。本例使用4.1.x版本。
  git clone https://github.com/RobertCNelson/armv7-lpae-multiplatform
  cd armv7-lpae-multiplatform/
  选择Linux 4.1.x Longterm版:
  git checkout origin/v4.1.x -b tmp
  选择Linux 4.2.x Stable版:
  git checkout origin/v4.2.x -b tmp
  选择Linux 4.3.x Prepatch版:
  git checkout origin/v4.3.x -b tmp
  运行build_kernel.sh脚本开始编译。脚本会自动下载并配置交叉编译工具,从Kernel官方Git仓库下载源码并开始编译。
  。/build_kernel.sh
  期间会进入menuconfig界面。由于脚本是为多平台设计的,用户可以根据需要裁剪不需要的平台和模块支持。
  编译完成后,在deploy目录下会生成zImage镜像文件,modules和firmware压缩包。
  获取RootFS
  eewiki提供了两种可供选择的精简版根文件系统,分别为Ubuntu 14.04和Debian 8。本文选择使用Ubuntu系统。下载并解压rootfs:
  wget -c https://rcn-ee.com/rootfs/eewiki/minfs/ubuntu-14.04.3-minimal-armhf-2015-09-07.tar.xz
  tar xf ubuntu-14.04.3-minimal-armhf-2015-09-07.tar.xz
  另附Dibian 8的下载地址:
  https://rcn-ee.com/rootfs/eewiki/barefs/debian-8.2-bare-armhf-2015-09-07.tar.xz
  制作启动SD卡(MicroSD)
  将TF卡通过USB读卡器连接编译主机,清除分区表sdX为对应的SD卡设备,如果使用主机自带的读卡器,则可能识别为mmcblkX。
  sudo dd if=/dev/zero of=/dev/sdX bs=1M count=10
  通过gparted或fdisk等工具为SD卡重新分区并格式化SD卡,本例使用Sandisk 8GB Class10 MicroSD卡。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !