Linux内核---1.TQ2440使用总结

来源:互联网 发布:维控触摸屏编程教程 编辑:程序博客网 时间:2024/06/08 07:53
一.编译
1. uboot的编译
  1. a. 修改 /work/tq/uboot/Makefile
  2.     #CROSS_COMPILE = /opt/EmbedSky/crosstools_3.4.5_softfloat/gcc-3.4.5-glibc-2.3.6/arm-linux/bin/arm-linux-
  3.     CROSS_COMPILE = /work/tq/bak/toolchain/crosstools_3.4.5_softfloat/gcc-3.4.5-glibc-2.3.6/arm-linux/bin/arm-linux-
  4.  b. make EmbedSky_config
  5.  c. make -j8
  6.  d. 烧写 dnw
2. 内核的编译
  1. a. 修改交叉编译工具链
  2.   由于没有在path环境变量中设arm-linux-gcc,
  3.   所以需要改/work/tq/bak/toolchain/4.3.3/bin/arm-linux-gcc
  4.   #exec arm-none-linux-gnueabi-gcc -march=armv4t $*
  5.   exec /work/tq/bak/toolchain/4.3.3/bin/arm-none-linux-gnueabi-gcc -march=armv4t $*
  6.  b. 修改 /work/tq/kernel/Makefile
  7.    #CROSS_COMPILE = arm-linux-
  8.    CROSS_COMPILE = /work/tq/bak/toolchain/4.3.3/bin/arm-none-linux-gnueabi-
  9.  c. cp -arf ./config_EmbedSky_W35 .config
  10.  d. make -j16 zImage 在当前目录下生成zImage.bin
2.1 问题:如果不选启动时会出现Kernel panic - not syncing: Attempted to kill init!
  1. Kernel Features --->
  2.             [*] Use the ARM EABI to compile the kernel 
  3.             [*] Allow old ABI binaries to run with this kernel (EXPERIMENTA)
3.busybox的编译
  1. /work/tq/rootfs/busybox-1.16.0/Makefile
  2.  164 #CROSS_COMPILE ?=
  3.  165 CROSS_COMPILE ?=/work/tq/bak/toolchain/4.3.3/bin/arm-none-linux-gnueabi-

  4.  191 #ARCH ?= $(SUBARCH)
  5.  192 ARCH ?= arm
4.文件系统
  1. 从2.6.30.4目录下将root_qt_4.5_2.6.30.4_20100601.tar.bz2出来
  2. cong@msi:/work/tq/rootfs$ sudo /work/tq/bak/toolchain/sbin/mkyaffs2image ./opt/EmbedSky/root_qt_4.5_2.6.30.4/ rootfs.img
5.烧写
ubuntu下用dnw
二. 具体使用
1. nfs的访问
  1. 主机端:
  2. a. 安装nfs: root@ubuntu: # apt-get install nfs-kernel-server
  3. b. 安装nfs客户端: root@ubuntu: # apt-get install nfs-common
  4. c. 配置文件/etc/exports,添加如下一行
  5.     /tmp/ *(rw,sync,no_subtree_check,no_root_squash,insecure)
  6. d. 启动NFS: root@ubuntu: # /etc/init.d/nfs-kernel-server start

  7. TQ2440端:
  8. [root@EmbedSky sky]# mount -t nfs 192.168.4.87:/tmp /mnt/ -o nolock -o tcp
 nfs: server ******* not responding, still trying 
  解决: a.改nfs的协议,从udp该到tcp
        b.改每次传输的块,更改rsize和wsize
2.网络设定
  1. a.临时修改mac地址
  2. [root@EmbedSky /]# ifconfig eth0 down
  3. [root@EmbedSky /]# ifconfig eth0 hw ether 10:44:45:67:89:AB
  4. [root@EmbedSky /]# ifconfig eth0 up
  5. b. 永久修改
  6. /etc/net.conf
  7. IPADDR=192.168.4.239
  8. NETMASK=255.255.255.0
  9. GATEWAY=192.168.4.1
  10. MAC=10:AC:45:67:89:ab
3. 通过nfs挂载根文件系统
3.1 主机端的设置:
  1. a.将root_qt_4.5_2.6.30.4_20100601.tar.bz2解压到/work/tq/rootfs_nfs中
  2. cong@msi:/work/tq/rootfs_nfs$ ls
  3. bin dev etc home lib linuxrc mnt opt proc root sbin sys tmp usr var web

  4. b.将/work/tq/rootfs_nfs添加到/etc/exports下
  5. cong@msi:/work/tq/rootfs_nfs$ cat /etc/exports 
  6. /etc/exports: the access control list for filesystems which may be exported
  7. /work/tq/rootfs_nfs *(rw,sync,no_subtree_check,no_root_squash,insecure)

  8. c.并重启nfs-server
  9. cong@msi:/work/tq/rootfs_nfs$ sudo /etc/init.d/nfs-kernel-server restart
3.1 TQ2440的设置

参考 http://www.linuxidc.com/Linux/2011-09/43770.htm   
0 0
原创粉丝点击