您的位置:首页 > 移动开发 > Android开发

android2.3_Kernel2.6.35_Debug_编译环境问题1

2012-09-20 18:52 218 查看
硬件:S5PV210

系统:android2.3,kernel2.6.35

背景:在编译kernel的出现如下错误:

make smdkv210_android_defconfig

Can't find default configuration "arch/x86/configs/smdkv210_android_defconfig"!

这是ARCH配置成X86了,改为arm就好。

make smdkv210_android_defconfig

cc1: 错误: 无法识别的命令行选项“-mlittle-endian”

cc1: 错误: 无法识别的命令行选项“-mapcs”

cc1: 错误: 无法识别的命令行选项“-mno-sched-prolog”

cc1: 错误: 无法识别的命令行选项“-mabi=aapcs-linux”

cc1: 错误: 无法识别的命令行选项“-mno-thumb-interwork”

arch/arm/kernel/asm-offsets.c:1: 错误: -march= 所带参数(armv5t)不正确

arch/arm/kernel/asm-offsets.c:1: 错误: -mtune= 所带参数(strongarm)不正确

make[1]: *** [arch/arm/kernel/asm-offsets.s] 错误 1

make: *** [prepare0] 错误 2

这是交叉编译器没配置好的问题。

上面2个问题的解决办法:

第一种解决办法:在系统的根目录下面/home/XXXX:打开隐藏文件.bashrc,在最后面添加:

ARCH = arm

CROSS_COMPILE = /usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi- //这个地址根据你安装的交叉编译器路径来决定

然后在命令行输入:source ~/.bashrc

这样改动的才能起作用。

第二种解决办法:打开kernel的根目录下的makefile,修改如下:

#deleted by skyxu
#export KBUILD_BUILDHOST := $(SUBARCH)
#ARCH		?= $(SUBARCH)
#CROSS_COMPILE	?=
#CROSS_COMPILE	?= $(CONFIG_CROSS_COMPILE:"%"=%)
#added by skyxu
export KBUILD_BUILDHOST := $(SUBARCH)
ARCH            ?= arm
CROSS_COMPILE   ?= /usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-
建议用第二种解决办法,不要随意去改系统的配置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: