天天看点

linux交叉编译出现的问题,,交叉编译linux内核问题解决(备忘)

1. make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig

*** Unable to find the ncurses libraries or the

*** required header files.

*** 'make menuconfig' requires the ncurses libraries.

***

*** Install ncurses (ncurses-devel) and try again.

***

make[1]: *** [scripts/kconfig/dochecklxdialog] 错误 1

make: *** [menuconfig] 错误 2

解决方法:

sudo apt-get install ncurses-dev

2. 使用busybox制作rootfs

make ARCH=arm CROSS_COMPILE=arm-linux-

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

make[1]: *** [networking/interface.o] Error 1

make: *** [networking] Error 2

解决办法:

在“networking/interface.c”添加:

#define ARPHRD_INFINIBAND 32 3.使用mini2440,采用nfs文件系统,linux启动参数为

"console=ttySAC0 root=/dev/nfs nfsroot=192.168.0.229:/home/yigc/rootfs_2440 ip=192.168.0.230:192.168.0.229:192.168.0.229:255.255.255.0:"

Warning: unable to open an initial console.

Kernel panic - not syncing: No init found. Try passing init= option to kernel.

解决办法:

创建rootfs过程中,在/dev目录下手动创建如下节点:

mknod -m 660 null c 1 3

mknod -m 660 console c 5 1

4.

使用mini2440,采用nfs文件系统,linux启动参数为

"console=ttySAC0 root=/dev/nfs nfsroot=192.168.0.229:/home/yigc/rootfs_2440 ip=192.168.0.230:192.168.0.229:192.168.0.229:255.255.255.0:"can't open /dev/tty3: No such file or directory

can't open /dev/tty2: No such file or directory

can't open /dev/tty4: No such file or directory解决办法:ln -sf /dev/null /dev/tty2

ln -sf /dev/null /dev/tty3

ln -sf /dev/null /dev/tty4

5.

编译minigui时候,设置FB时出错:NEWGAL>FBCON: Can't open /dev/tty0: No such file or directory

NEWGAL: Set video mode failure.

InitGUI: Can not initialize graphics engine!

解决办法:内核配置时候选择下面的选项

Graphics support --->

Support for frame buffer devices

Virtual Frame Buffer support (ONLY FOR TESTING!)

Console display driver support --->

Framebuffer Console support