ARM Linux根文件系统制作

 

 

首页Linux编程

背景:

阅读新闻

ARM Linux根文件系统制作

[日期:2011-07-20]   来源:Linux社区  作者:liaozc   [字体:]  

1. 准备工作

Busybox源码下载

免费下载地址在

用户名与密码都是

具体下载目录在 /pub/2011/07/20/Busybox/

# cd /home/liao

# tar –jxvf busybox-1.13.3.tar.bz2

# cd busybox-1.13.3

2. busybox编译

2.1修改Makefile

CROSS_COMPILE ?=arm-linux-

ARCH ?=arm

2.2 配置busybox

# make menuconfig

Busybox Settings--->

Build Options--->

[*] Build BusyBox as a static binary(no shared libs)

[*] Build with Large File Support(for accessing files>2GB)

Installation Options->

[]Don’t use /usr

Applets links (as soft-links) --->

(./_install) BusyBox installation prefix        修改(./_install)为/utu2440/rootfs

Busybox Library Tuning --->

[*] vi-style line editing commands

[*]Fancy shell prompts

Linux Module Utilities--->

(/lib/modules)Default directory containing modules

(modules.dep)Default name of modules.dep

[ ] simplified modutils

[*] insmod

[*] rmmod

[*] lsmod

[*] modprobe

-----options common to multiple modutils

[ ] support version 2.2/2.4 Linux kernels

[*]Support tainted module checking with new kernels

[*]Support for module .aliases file

[*] support for modules.symbols file

Linux System Utilities --->

[*]Support /etc/mdev.conf

[*]Support command execution at device addition/removal

# make

# make install

编译出错:

networking/interface.c:818: error: `ARPHRD_INFINIBAND' undeclared here (not in a function)

networking/interface.c:818: error: initializer element is not constant

networking/interface.c:818: error: (near initialization for `ib_hwtype.type')

make[1]: *** [networking/interface.o] 错误 1

make: *** [networking] 错误 2

解决:在networking/interface.c文件中添加:

#define ARPHRD_INFINIBAND 32   /* InfiniBand */

编译后,在rootfs目录下会生成目录bin、sbin、usr和文件linuxrc的内容

3. 建立根文件目录

前面已经生成了bin、sbin等目录,这里建立一些必要的文件目录

# mkdir dev etc lib proc sys mnt tmp var home boot root

# mkdir usr/lib usr/modules

# mkdir etc/init.d etc/sysconfig

# mkdir mnt/etc mnt/jffs2 mnt/data mnt/temp

# mkdir var/lib var/lock var/run var/tmp

# chmod 1777 tmp

# chmod 1777 var/tmp

# sudo mknod -m 600 dev/console c 5 1

# sudo mknod -m 600 dev/null c 1 3

这两个设备节点需要root用户建立,具体原因有待研究

 

S3C2440驱动篇之ADC驱动分析

U-Boot1.3.1移植YC2440

相关资讯       Arm Linux 

   

本文评论   查看全部评论 (0)


评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

 

 

 

最新资讯

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwjxsx.html