设为首页 加入收藏

TOP

Ubuntu 10.04 下编译Android froyo 问题
2014-11-24 07:26:08 来源: 作者: 【 】 浏览:1
Tags:Ubuntu 10.04 编译 Android froyo 问题

即使把原先编译 andriod应用的两个操作提前:


. build/envsetup.sh


lunch


也还是会出如下错误


CHK include/linux/version.h
make[1]: “include/asm-arm/mach-types.h”是最新的。
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-arm
CC kernel/bounds.s
cc1: error: unrecognized command line option "-mlittle-endian"
cc1: error: unrecognized command line option "-mabi=aapcs-linux"
cc1: error: unrecognized command line option "-mno-thumb-interwork"
kernel/bounds.c:1: error: bad value (armv5t) for -march= switch
kernel/bounds.c:1: error: bad value (strongarm) for -mtune= switch


上述这个问题,网上查到了系CROSS_COMPILE没设置正确导致的。


后来发现,2.2版中linux kernel的makefile中CROSS_COMPILE确实没有设置,而2.1中就有设置。


所以2.2中的CROSS_COMPILE应该是由其他相关环境变量设定来获取的。


后来发现,使用 sudo passwd root 明了创建了root 命令后,以root命令操作如上的编译,就可以编译通过了。


2,编译android程序的出错


现象比较多,主要是java的不正常。


敲入 java -version


则可能出现如下错误:



程序“java”已包含在以下软件包中:
* gcj-4.4-jre-headless
* openjdk-6-jre-headless
* cacao
* gij-4.3
* jamvm
* kaffe


或者说java找不到。


如果java正常安装了,并且版本为正确1.5版,那只有一种可能就是环境变量的问题。


由于本人使用的是引用外部的sh来设置环境变量(source android.sh)。并没有修改系统的开机bash设定。


android.sh中设定了如下


export JAVA_HOME=/usr/java/jdk1.5.0_22
export CLASSPATH=$JAVA_HOME/lib/tools.jar:${JAVA_HOME}/lib/dt.jar:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH


设定后,用env查看页好像是对的。


后多方查找,发现了一个现象,如果是在linux下面新建一个android.sh文件,将这些设定写入,用source android.sh引用后,一切正常。


这个时候,java -version也能看到版本。


如果是在Windows下面建立一个android.sh,将其设定写入后,在linux 中调用source android.sh,就会出这种莫名其妙问题。


但是用文件比较工具比较这两个文件,都是相同的。


看来Windows文件系统和linux 文件系统还是很多不同啊!


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android开发中JAVA调用C++ 下一篇Linux C/C++开发工具 Eclipse简单..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·What Is Linux (2025-12-25 16:57:17)
·Linux小白必备:超全 (2025-12-25 16:57:14)
·Linux 常用操作命令 (2025-12-25 16:57:11)
·HTTP协议深度解析: (2025-12-25 16:21:03)
·HTTP 概述 - MDN (2025-12-25 16:21:00)