电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

编译Linux内核的错误汇总VIP免费

编译Linux内核的错误汇总_第1页
1/12
编译Linux内核的错误汇总_第2页
2/12
编译Linux内核的错误汇总_第3页
3/12
编译linux内核时出现的问题一:invalidoption`abi=aapcs-LINUX'选项错误scripts/kconfig/conf-sarch/arm/KconfigCHKinclude/linux/version.hSYMLINKinclude/asm-arm/arch->include/asm-arm/arch-s3c2410make[1]:`include/asm-arm/mach-types.h'isuptodate.CHKinclude/linux/utsrelease.hCCarch/arm/kernel/asm-offsets.scc1:error:invalidoption`abi=aapcs-linux'make[1]:***[arch/arm/kernel/asm-offsets.s]Error1make:***[prepare0]Error2解决方法:You'rebuildinganEABIkernelwithanOABIcompiler.YoucaneitherturnofftheEABIoptioninyourconfigfile(KernelFeatures->UseEABI),or,youcanuseanEABItoolchainsuchastheARM/GNULinuxonefrom<.I">http://www.codesourcery.com/gnu_toolchains/arm/download.HTML>.Irecommendthelatter,becausethenyoucanrunArjan'snewimages.上述的关掉EABI选项可以通过测试二:drivers/video/console/vgacon.o:987:warning:comparisonisalwaystrueduetolimITedrangeofdatatypemake[3]:***[drivers/video/console/vgacon.o]error1make[2]:***[drivers/video/console2]error2make[1]:***[drivers/video1]error2make:***[drivers]error2解决方法:在makemenuconfig时选哪个设备驱动的选项进去在选Graphicssupport->consoledisplaydriversupport->vgatextconsole(不选这个)再编译就行了!三:`rtc_lock'未定义错误(未完全解决)方法:drivers/built-in.o(.text+0x281e4):drivers/char/nvram.c:350:moreundefinedreferencesto`rtc_lock'follow查找drivers/char/nvram.c有关的rtc_lock定义,发现2.6.21与以往的kernel不同,于是在包含文件中查找,在include/linux/mc146818rtc.h中发现了rtc_lock的定义,但是有一个__KERNEL__的条件编译选项,去掉这个条件编译选项,再makezImage,但是问题好像依然存在,继续在drivers/char/nvram.c中增加这个定义spinlock_trtc_lock;再编译,发现编译通过。四:makezImage和makexipImageKernelconfiguredforXIP(CONFIG_XIP_KERNEL=y)OnlythexipImagetargetisavailableinthiscasemake[1]:***[arch/arm/boot/zImage]Error1make:***[zImage]Error2解决方法:好象是makemenuconfig的时候Bootoptions--->KernelExecte-In-PlacefromROM选项问题,去掉这个选项编译通过(如果是makexopImage时則需要将这个选项选上),最终成功编译了makezImage。五:出现make:***[.tmp_vmlinux1]Error1这类错误解决方法:修改arch/arm/kernel/vmlinux.lds[arm@localhostlinux2.6.14]$viarch/arm/kernel/vmlinux.lds将文件尾2条的ASSERT注释掉(1439行)/*ASSERT((__proc_info_end__proc_info_begin),"missingCPUsupport")*//*ASSERT((__arch_info_end__arch_info_begin),"nomachinerecorddefined")*/然后重新makezImage即可六:如果大家遇到一下几个问题可以参考本文:amakemenuconfig1)/usr/bin/ld:cannotfind-lncurses解决办法:sudoapt-getinstalllibncurses5-dev2)YourdisplayistoosmalltorunMenuconfig!解决办法:窗口最大化b/usr/local/arm/bin/arm-linux-ld:arch/arm/kernel/vmlinux.lds:782:parseerrormake:***[.tmp_vmlinux1]错误1ld链接时产生错误对应行:/home/kevin/ARMSystem/linux-2.6.12/arch/arm/kernel/vmlinux.lds/*thosemustneverbeempty*/ASSERT((__proc_info_end-__proc_info_begin),"missingCPUsupport")ASSERT((__arch_info_end-__arch_info_begin),"nomachinerecorddefined")解决办法:注释掉这两行下面是编译时产生的一些信息1'crosscompile#CROSS_COMPILEspecifytheprefixusedforallexecutablesused#duringcompilation.Onlygccandrelatedbin-utilsexecutables#areprefixedwith$(CROSS_COMPILE).#CROSS_COMPILEcanbesetonthecommandline#makeCROSS_COMPILE=ia64-linux-#AlternativelyCROSS_COMPILEcanbesetintheenvironment.#DefaultvalueforCROSS_COMPILEisnottoprefixexecutables#Note:SomearchitecturesassignCROSS_COMPILEintheirarch/*/MakefileARCH:=armCROSS_COMPILE:=/usr/local/arm/bin/arm-linux-2'kevin@ke...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

编译Linux内核的错误汇总

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部