您现在的位置: 主页 > MCU > 单片机技术应用 > 编译s3c2410的linux2.4.18内核 -
本文所属标签:
为本文创立个标签吧:

编译s3c2410的linux2.4.18内核 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-06 

[导读]进入内核源码所在的路径/usr/src/linux-2.4中A)make mrproper//清理内核源代码树,如果是第一次配置内核则可以不运行//ls .config//验证内核配置文件不存在B)make menuconfig//配置内核以及内核模块,其实这里的还

进入内核源码所在的路径/usr/src/linux-2.4中
A)make mrproper//清理内核源代码树,如果是第一次配置内核则可以不运行

本文引用地址: http://www.21ic.com/app/mcu/201807/784658.htm

//ls .config//验证内核配置文件不存在
B)make menuconfig//配置内核以及内核模块,其实这里的还可以使用
//(1)make config(交互式问答)
//(2)cp /etc/config-2.4.20-8 .config(通过复制现有的配置文件而获取)

//(3)make oldconfig(通过旧内核生成)
//(4)make xconfig(图形界面下编译)
//如果要从图形界面定制内核,需要安装第三张光盘中的tk包。

//这里强烈推荐使用make menuconfig。
//在进入内核配置菜单之后:
//(1)[*]表示编译进入内核——随系统启动而启动
//(2)[]表示配置项不编译进内核
//(3)表示不编译进内核,作为内核模块进行编
//(4)< >不编译进内核也不作为内核模块进行编译
C)make dep//依赖性关系
D)make bzImage//编译内核核心
E)make modules//编译内核模块
F)make install//安装编译好的新内核核心,嵌入式这步省略
G)make modules_install

//安装内核模块(即便事实上什么也没有建构)。 这会把内核模块安装入 /lib/modules/ /kernel/drivers 目录( KERNELVERSION 是 Makefile 中指定的版本)。在这个例子里是 /lib/modules/2.4.20-2.47.1custom/kernel/drivers/;

嵌入式的话放在宿主机的tmp/lib/modules/</kernel/drivers下,确切位置最好看命令行的输出,开头有cp的行。

make mrproper后会彻底改变原来的配置,所以阳初提供的2410linux_src.tar.gz源码包

解压后直接make menuconfig,保存配置成一个配置文件,以后再编译内核时就可以make mrproper,make menuconfig调出第一次的配置,在此配置上修改。


在开发板上输入

#insmod ctrlboard.o
ctrlboard.o: unresolved symbol devfs_register
ctrlboard.o: unresolved symbol __wake_up
ctrlboard.o: unresolved symbol unregister_chrdev
ctrlboard.o: unresolved symbol register_chrdev
ctrlboard.o: unresolved symbol __arch_copy_to_user
ctrlboard.o: unresolved symbol free_irq
ctrlboard.o: unresolved symbol devfs_unregister
ctrlboard.o: unresolved symbol interruptible_sleep_on
ctrlboard.o: unresolved symbol set_external_irq
ctrlboard.o: unresolved symbol request_irq
ctrlboard.o: unresolved symbol __arch_copy_from_user
ctrlboard.o: unresolved symbol printk
ctrlboard.o: unresolved symbol udelay
出现上面错误的原因是编译内核的时候选择下面这一项,这项表示驱动程序版本跟内核版本不严格一样的话,insmod将找不到内核函数
Loadable module support -------->
[ ]set version information on all module symboles

启用设备文件系统devfs,在配置内核时选择

File systems--------------->

[]/dev file system support

#看内核导出符号
cat /proc/ksyms

如果编译linux2.6.14.1内核,则是
make menuconfig
make zImage




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机技术应用 > 编译s3c2410的linux2.4.18内核 -
 

"编译s3c2410的linux2.4.18内核 -"的相关文章

网站地图

围观()