Freeing init memory: 132K
/etc/rc.d/init.d/httpd: line 15: /sbin/boa: Permission
denied
ifconfig: SIOCGIFFLAGS: No such device
ifconfig: SIOCSIFHWADDR: No such device
ifconfig: SIOCSIFADDR: No such device
route: SIOCADDRT: Network is unreachable
网卡没有移植好,sbin/boa 权限设置错误
网卡移植参考tq出厂的linux2.6.30.4,在mach-s3c2440.c中添加dm9000 结构
static struct resource s3c_dm9k_resource[] = {
[0] = {
.start = S3C2410_CS4,
.end = S3C2410_CS4 + 3,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = S3C2410_CS4 + 4,
.end = S3C2410_CS4 + 4 + 3,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = IRQ_EINT7,
.end = IRQ_EINT7,
.flags = IORESOURCE_IRQ | IRQF_TRIGGER_RISING,
}
};
static struct dm9000_plat_data s3c_dm9k_platdata = {
.flags = DM9000_PLATF_16BITONLY,
};
struct platform_device s3c_device_dm9000 = {
.name = "dm9000",
.id = 0,
.num_resources = ARRAY_SIZE(s3c_dm9k_resource),
.resource = s3c_dm9k_resource,
.dev = {
.platform_data = &s3c_dm9k_platdata,
}
};
及在static struct platform_device *smdk2440_devices[] __initdata
结构中添加dm9000设备
2.can't open /dev/ttySAC0: No such file or director
文件系统中dev下没有ttyS0;
1. 修改drivers/tty/serial/samsung.c中
.dev_name="tq2440_serial"
2. 文件系统中/lib一定要完整
3. 文件系统中,/etc/inittab 中
tq2440_serial0::askfirst:-/bin/sh
4. 文件系统中, /etc/init.d/rcS一定要完整,至少要有以下内容
mount -a
mdev -s
按照上面问题仍然在!!!
参照
问题在于tq2440_serial0关键字找不到。
解决方法:在文件系统中,/etc/inittab 中
tq2440_serial0::askfirst:-/bin/sh改为console::askfirst:-/bin/sh
就行了。
按照上面问题仍然在!!!
can't open /dev/console: No such file or directory
参照:主机:ubuntu 8.10 x86_64
编译了busybox之后,就开始考虑制作一个最小的根文件系统了。
还是从NFS启动。
把编译busybox生成的二进制文件放在NFS目录,有bin sbin usr 和linuxrc
创建etc 目录,在etc目录新建inittab文件
# /etc/inittab
::sysinit:/etc/init.d/rcS
console::askfirst:-/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r
新建fstab文件
#/etc/fstab
# device mount-point type options dump fsck order
proc /proc proc defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
在etc目录下新建子目录init.d及init.d目录下rcS文件
mkdir init.d
cd ninit.d
vim rcS内容为
#!/bin/sh
ifconfig eth0 192.168.0.100
mount -a
保存,退出。
加上可执行属性
sudo chmod +x
==========================
在NFS目录下创建其它目录
mkdir dev tmp proc
=======================
在dev目录下创建必须设备文件
sudo mknod console c 5 1
sudo mknod ttyS0 c 204 64
sudo mknod null c 1 3
=====================
启动开发板,
看到
Please press Enter to activate this
console.
回车,即可进入shell控制台,
最小系统启动成功。
./compal/CodeSourcery/Sourcery_G++_Lite/bin/../arm-none-linux-gnueabi/libc/usr/include/linux/netfilter.h:56:17:
error: field 'in' has incomplete type
添加缺少的头文件:
例子:
cp -i file1 file2
(将文档 file1 复制成 file2 .
–i为提示确认。)
cp file1 dir1
将文档 file1
复制到目录 dir1 下,文件名仍为 file1.
cp /tmp/file1 .
将目录 /tmp 下的文档
file1复制到现行目录下,档名仍为 file1.
cp /tmp/file1 file2
将目录 /tmp 下的文档
file1现行目录下,档名为file2
cp -r dir1 dir2
(recursive copy) 复制整个目录.若目录
dir2 不存在,则将目录dir1,及其所有文档和子目录,复制到目录 dir2
下,新目录名称为dir1.若目录dir2不存在,则将dir1,及其所有文档和子目录,复制为目录 dir2.
busybox
make defconfig
make menuconfig
make
make install