环境搭建(基于ubuntu16.04+Smart210 SDK)

a-安装NFS服务

      1.sudo apt-get install nfs-kernel-server

apt-get install portmap

apt-get install rpcbind

apt-get install nfs-common

      2.、执行命令:mkdir /var/lib/tftpboot 建立一个 nfs 服务的文件夹;

      3.sudo vi /etc/exports 配置 nfs  在 文 章 的 最 后 一 行 添 加 : /var/lib/tftpboot *(rw,sync,no_root_squash,no_subtree_check)

4.修改完上述配置文件保存退出。

5.执行命令:sudo /etc/init.d/rpcbind restart 重启 rpcbind 服务。nfs 是一个 RPC 程序,使用它前,需要映射好端口,通过 rpcbind 设定。

6.执行命令:sudo /etc/init.d/nfs-kernel-server restart 重启 nfs 服务。

7.if 会有问题,显示 Not starting: portmapper is not running.然后重启系统后就正常了,不正常可以加 sudo modprobe nfs 试试

b-制作zImage uImage内核映像

  (一) 烧写自带映像(4M左右)

制作 uImage 所使用的 mkimage 工具在 u-boot 的 tools 目录下,在编译 u-boot 的时候会将 u-boot 目录下的 mkimage.c 文件编译成 mkimage 工具。将 mkimage 拷贝到文件系统根目录 usr/bin 目录下,然后进入 zImage 所在的目录内,并执行如下指令: mkimage -n ‘kernel 3.0.8’ -A arm -O Linux -T kernel -C none -a 0x20008000 –e 0x20008040 -d zImage uImage 如果没有问题,则会在 zImage 目录旁生成 uImage 文件。 

  (二)编译linux-3.0.8-20130327.tgz内核

    解压,找到Makefile文件,修改

ARCH ?= arm CROSS_COMPILE?= $(CONFIG_CROSS_COMPILE:"%"=%)

将其修改为: ARCH ?= arm CROSS_COMPILE ?= /usr/local/arm/4.5.1/bin/arm-linux

在执行如下指令: cp mini210_linux_defconfig .config make 在 linux-3.0.8/arch/arm/boot 目录内生成 zImage 再利用 mkimage 将其制作为 uImage 文件。

c-烧写uImage内核映像tftp 21000000 uImage nand write 21000000 600000 500000 setenv bootcmd nand read 20008000 600000 500000\;bootm 20008000 saveenv

将 uImage 内核写入 nand flash,写入的是 Nand Flash 的第三个分区的起始地址 600000 (6MB),大小为 500000(5MB,因为内核为 4MB 多,不足 5MB)。

d-配置根文件系统

选择 rootfs_rtm_210.tgz 根文件系统,解压到/var/lib/tftpboot目录内,重新启动开发板。配置如下信息:

setenv bootargs noinitrd root=/dev/nfs rw nfsroot=10.25.130.31:/var/lib/tftpboot ip=10.25.130.26:10.25.130.31:10.25.130.1:255.255.255.0:arm:eth0:off console=ttySAC0,115200

你可能感兴趣的:(环境搭建(基于ubuntu16.04+Smart210 SDK))