当前位置:  技术问答>linux和unix

内核编译问题求教!

    来源: 互联网  发布时间:2016-12-24

    本文导语:  编译内核过程中出现一下错误: arch/arm/kernel/kernel.o: In function `setup_arch': arch/arm/kernel/kernel.o(.text.init+0x106c): undefined reference to `conswitchp' arch/arm/kernel/kernel.o(.text.init+0x1070): undefined reference to `dummy_con' arch/arm/kernel/ke...

编译内核过程中出现一下错误:
arch/arm/kernel/kernel.o: In function `setup_arch':
arch/arm/kernel/kernel.o(.text.init+0x106c): undefined reference to `conswitchp'
arch/arm/kernel/kernel.o(.text.init+0x1070): undefined reference to `dummy_con'
arch/arm/kernel/kernel.o(__ksymtab+0x80): undefined reference to `kd_mksound'
kernel/kernel.o: In function `panic':
kernel/kernel.o(.text+0x3020): undefined reference to `disable_console_blank'
drivers/char/char.o: In function `tty_open':
drivers/char/char.o(.text+0x2970): undefined reference to `fg_console'
drivers/char/char.o: In function `tty_ioctl':
drivers/char/char.o(.text+0x3798): undefined reference to `tioclinux'
drivers/char/char.o: In function `chr_dev_init':
drivers/char/char.o(.text.init+0xb0): undefined reference to `fbmem_init'
drivers/char/char.o: In function `console_init':
drivers/char/char.o(.text.init+0x134): undefined reference to `con_init'
drivers/char/char.o: In function `tty_init':
drivers/char/char.o(.text.init+0x21c): undefined reference to `con_init_devfs'
drivers/char/char.o(.text.init+0x2bc): undefined reference to `kbd_init'
drivers/char/char.o(.text.init+0x2c4): undefined reference to `vcs_init'
drivers/block/block.o: In function `device_init':
drivers/block/block.o(.text.init+0x13c): undefined reference to `console_map_init'
drivers/input/inputdrv.o: In function `emulate_raw':
drivers/input/inputdrv.o(.text+0xa30): undefined reference to `handle_scancode'
drivers/input/inputdrv.o(.text+0xa3c): undefined reference to `handle_scancode'
drivers/input/inputdrv.o(.text+0xa48): undefined reference to `handle_scancode'
drivers/input/inputdrv.o(.text+0xa84): undefined reference to `handle_scancode'
drivers/input/inputdrv.o(.text+0xa94): undefined reference to `handle_scancode'
drivers/input/inputdrv.o(.text+0xaa8): more undefined references to `handle_scancode' follow
drivers/input/inputdrv.o: In function `keybdev_event':
drivers/input/inputdrv.o(.text+0xbc0): undefined reference to `keyboard_tasklet'
drivers/input/inputdrv.o(.text+0xbc4): undefined reference to `keyboard_tasklet'
drivers/input/inputdrv.o: In function `keybdev_init':
drivers/input/inputdrv.o(.text.init+0x8c): undefined reference to `kbd_refresh_leds'
drivers/input/inputdrv.o(.text.init+0xec): undefined reference to `kbd_ledfunc'
/home/at91arm9200/source/VGA_LCD/Kernel/linux-2.4.27-AT91RM9200/lib/lib.a(bust_spinlocks.o): In function `bust_spinlocks':
bust_spinlocks.o(.text+0x28): undefined reference to `unblank_screen'
make: *** [vmlinux] Error 1
不知道有没有人知道问题出在什么地方?

|
应该是什么.o或者库没有链接上,去看看你的那些undefined reference的东东,你生成的.o是不是加到Makefile中的Link命令中了。你添加了新的驱动,不是去直接编译就可以了,还有修改Makefile,将你要源码集成进去。

|
好像依赖关系没有处理好。

 Symbol: HW_CONSOLE [=y]    
 Symbol: VT_HW_CONSOLE_BINDING[=n]            
 Prompt: Support for binding and unbinding console drivers  
 Defined at drivers/char Kconfig:68  
  │   Depends on: HW_CONSOLE    
  │   Location:                                                                       
  │     -> Device Drivers  
  │       -> Character devices
  │         -> Virtual terminal (VT [=y])  


这个  conswitchp 变量定义在  drivers/char/vt.c 文件,
依赖于 HW_CONSOLE  这个宏。

你看看你的配置  Virtual terminal (VT [=y])   选上没有。

|
extern const struct consw *conswitchp; 

你这是extern啊?建议你去查一下extern的含义,那只是声明这个变量在别的地方定义过,编译的时候不会当未定义变量,但是链接的时候还是要去需要找到定义的。你确信你的变量定义了吗?

    
 
 

您可能感兴趣的文章:

  • [求教]内核加载模块后,这部分内容编译在内核里的吗?
  • 求教内核编译网络部分配置
  • 内核编程问题求教!!!!
  • 求教:我想学LINUX内核,不知道买什么书
  • 内核学习求教!
  • 求教,Linux下键盘输入的所有数据都会经过Linux内核吗???
  • 求教!内核挂死在calibrating delay loop。。。。处!
  • 求教:关于内核物理地址和虚拟地址的问题
  • 求教,linux内核代码关于网络部分的浅析
  • 求教——编译内核(新手大派送)
  • 求教:一进程执行过程中被同一外部中断程序大量反复中断会不会引起内核栈溢出?
  • 求教,2.6.28内核中struct net 结构作用?
  • 求教linux2.6.31内核中ide与ata的问题
  • 紧急求教: LINUX 内核编译错误 !!!!!!!!!!
  • LINUX内核解读 求教
  • 看linux0.12内核遇到个很奇怪的赋值,求教用意.
  • 问题求教:内核启动时卡在Freeing init memory:
  • 求教一些关于socket的系列知识,以及一点内核知识。
  • CentOS 6内核升级:下载编译启用新内核版本详细过程
  • GCC3.4可以编译2.4内核吗 如何查看某版本内核是用哪个版本gcc编译的
  • Fedora Core 2自带的内核升级程序下载下来内核后,要不要再编译一遍内核?
  • 编译新内核后怎么进入原来内核
  • 关于如何把编译进内核的编译成模块
  • 不重新编译内核能修改内核函数吗?
  • 为什么我自己编译的内核比系统自带的内核大了10倍左右?
  • Linux 编译内核之后 没办法选择内核版本
  • 内核编译出现:没有编译规则/driver/pci/devlist.h。
  • *******是不是对内核模块编程然后再重新编译内核就可以把此模块整合到linux系统中
  • 修改内核代码问题:如何编译修改的单个文件而不用重建整个内核?
  • 想问一下,编译LINUX内核时,是否可以只编译其中的一个模块?
  • 新手的菜鸟问题:不同内核版本下编译的程序能否互相调用,是否需要在同一内核下重新编译.
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux内核中影响tcp三次握手的一些协议配置
  • 进程内核栈和操作系统内核栈的关系
  • TCP协议四次断连过程介绍及Linux内核协议栈中相关设置项
  • Linux中内核线程不访问内核态地址空间?
  • Linux进程的内核栈和用户栈概念,相互关系及切换过程
  • 2.6内核下编译2.4内核
  • linux内核中的likely宏和unlikely宏介绍及用法
  • 谁能提供kgdb内核补丁内核模块的下载
  • CentOS 6.5 下载地址及如何升级内核(kernel)版本到 3.10.28
  • 请问linux中如何判断内核是否已经启动。(在内核中写程序)
  • Linux下c/c++开发之程序崩溃(Segment fault)时内核转储文件(core dump)生成设置方法
  • 内核模块跟内核版本不匹配????????
  • docker使用的技术之Container内核原理介绍
  • 请教:如何安装新内核(rpm包)而不同原来得内核冲突?? 在线等待!!
  • linux为什么要升级内核?升级内核有何作用?
  • 内核升级后,如何在新的内核中加载显卡驱动?
  • 内核源码和结果make过的内核源码有什么区别
  • 如何学好内核?学了内核能应用于哪方面?
  • 请问在2.6的内核环境下编译2.4的内核有没有什么特殊的要求
  • 内核进程间发送信号用哪个函数,如果没有这东西,那内核里异步通知用哪个东西
  • 初学内核编程,在内核态下怎么用socket通信?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3