Ubuntu9.10默认安装的纯净系统,没装任何其他软件。
1.下载源码android-2.1_r2,直接make
2.出错及解决如下:
(1)/bin/bash: bison: command not found
解决:a@ubuntu:~/work/android-2.1_r2$ sudo apt-get install bison
(2)make: *** No rule to make target `Please-install-JDK-5.0,-update-12-or-higher,-which-you-can-download-from-java.sun.com',
needed by `out/target/common/docs/api-stubs-timestamp'. Stop.
解决:安装JDK 5.0
1):根据官方文档里所说,源代码的编译必须使用JDK5才能编译的了,所以这里我们使用jdk5
2): 需要先更新源,在终端里执行 sudo vim /etc/apt/sources.list
3): 在source.list里把以下2行拷贝到文档最后面:
deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
保存退出。
4): 执行 sudo apt-get update 更新源.
5): 配置编译环境并下载JDK5:sudo apt-get install sun-java5-jdk
(3)/bin/bash: g++: command not found
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libhost_intermediates/pseudolocalize.o] Error 127
解决:a@ubuntu:~/work/android-2.1_r2$ sudo apt-get install build-essential
(4)external/clearsilver/cgi/cgi.c:22:18: error: zlib.h: No such file or directory
external/clearsilver/cgi/cgi.c: In function ‘cgi_compress’:
external/clearsilver/cgi/cgi.c:885: error: ‘z_stream’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:885: error: (Each undeclared identifier is reported only once
external/clearsilver/cgi/cgi.c:885: error: for each function it appears in.)
external/clearsilver/cgi/cgi.c:885: error: expected ‘;’ before ‘stream’
external/clearsilver/cgi/cgi.c:888: error: ‘stream’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:888: error: ‘Bytef’ undeclared (first use in
this function)
external/clearsilver/cgi/cgi.c:888: error: expected expression before ‘)’ token
external/clearsilver/cgi/cgi.c:889: error: ‘uInt’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:889: error: expected ‘;’ before ‘str’
external/clearsilver/cgi/cgi.c:890: error: expected expression before ‘)’ token
external/clearsilver/cgi/cgi.c:892: error: ‘uLong’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:892: error: expected ‘)’ before ‘stream’
external/clearsilver/cgi/cgi.c:895: error: ‘alloc_func’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:895: error: expected ‘;’ before numeric constant
external/clearsilver/cgi/cgi.c:896: error: ‘free_func’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:896: error: expected ‘;’ before numeric constant
external/clearsilver/cgi/cgi.c:897: error: ‘voidpf’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:897: error: expected ‘;’ before numeric constant
external/clearsilver/cgi/cgi.c:900: error: ‘Z_DEFAULT_COMPRESSION’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:900: error: ‘Z_DEFLATED’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:900: error: ‘MAX_WBITS’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:900: error: ‘Z_DEFAULT_STRATEGY’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:901: error: ‘Z_OK’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:904: error: ‘Z_FINISH’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:905: error: ‘Z_STREAM_END’ undeclared
(first use in this function)external/clearsilver/cgi/cgi.c: In function
‘cgi_output’:
external/clearsilver/cgi/cgi.c:1200: error: ‘Z_NULL’ undeclared (first use in this function)
external/clearsilver/cgi/cgi.c:1201: error: expected ‘)’ before ‘Bytef’
external/clearsilver/cgi/cgi.c:1218: error: ‘Z_DEFLATED’ undeclared (first use in this function)
make: *** [out/host/linux-x86/obj/SHARED_LIBRARIES/libneo_cgi_intermediates/cgi.o] Error 1
解决:a@ubuntu:~/work/android-2.1_r2$ sudo apt-get install zlib1g-dev
(5)/bin/bash: flex: command not found
make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_l.cpp] Error 127
解决:a@ubuntu:~/work/android-2.1_r2$ sudo apt-get install flex
(6)/usr/bin/ld: cannot find -lncurses
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb] Error 1
解决:a@ubuntu:~/work/android-2.1_r2$ sudo apt-get install libncurses-dev
(7)prebuilt/linux-x86/sdl/include/SDL/SDL_syswm.h:55:22: error: X11/Xlib.h: No such file or directory
prebuilt/linux-x86/sdl/include/SDL/SDL_syswm.h:56:23: error: X11/Xatom.h: No such file or directory
In file included from external/qemu/android/skin/window.c:19:
prebuilt/linux-x86/sdl/include/SDL/SDL_syswm.h:73: error: expected specifier-qualifier-list before ‘XEvent’
prebuilt/linux-x86/sdl/include/SDL/SDL_syswm.h:86: error: expected specifier-qualifier-list before ‘Display’
make: *** [out/host/linux-x86/obj/EXECUTABLES/emulator_intermediates/android/skin/window.o] Error 1
解决:a@ubuntu:~/work/android-2.1_r2$ sudo apt-get install libx11-dev
(8)sh: gperf: not found
calling gperf failed: 32512 at ./makeprop.pl line 96.
make: *** [out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/css/CSSPropertyNames.h]Error 25
make: ***
Deleting file
`out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/css/CSSPropertyNames.h'
解决:a@ubuntu:~/work/android-2.1_r2$ sudo apt-get install gperf
http://hi.baidu.com/maxgoto/blog/item/fa000f7bf01135f80ad187d8.html最近下载
了Android 2.1源码,在Ubuntu
9.10上做了一次编译,由于系统为纯净系统,之前没有进行过任何Android的编译,所以需先安装一些必要软件。编译过程参考网上一些文章,做下笔记
如下,以供参考:
1. 下载或更新Android源码
至最新,截止到前天(04-09)好像是2.1-r2.
2. Android 要求的 jdk 1.5,而Ubuntu9.10的源里只有JDK1.6. 目前网上解决方法有两种:
解决方法一:
安装JDK1.5
1) 根据官方文档里所说,源代码的编译必须使用JDK5才能编译的了,所以这里我们使用jdk5
2) 需要先更新源,在终端里执行 sudo vim /etc/apt/sources.list
3) 在source.list里把以下2行拷贝到文档最后面:
debhttp://us.archive.ubuntu.com/ubuntu/
jaunty multiverse
debhttp://us.archive.ubuntu.com/ubuntu/
jaunty-updates multiverse
保存退出。
4) 执行 sudo apt-get update 更新源.
5)配置编译环境并下载JDK5:sudo apt-get install sun-java5-jdk
解决方法二:
安装JDK 1.6
, 修改Android源文件。
1) 安装jdk 1.6,修改<src_top/build/core/make.mk>(如果2.0版本源码请修改<src_top/build/core/main.mk>)
在文件中搜索并分别把:
java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1.5[. "$$]')
javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1.5[. "$$]')
两行改成:
java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1.6[. "$$]')
javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1.6[. "$$]')
即可。
推荐使用第一种解决方法。
3.安装编译过程中必需软件
。根据网上高人的经验,这是编译的最小工具软件集。
$sudo apt-get install build-essential
$sudo apt-get install zlib1g-dev
$sudo apt-get install flex
$sudo apt-get install libncurses-dev
$sudo apt-get install libx11-dev
$sudo apt-get install gperf
4.make
.经过漫长的编译过程,编译成功。
相关推荐
android在ubuntu下反编译工具
Ubuntu_10.04下编译Android源码全过程
Ubuntu系统下Android源码编译.pdf
ubuntu下android ndk编译环境搭建,android应用程序开发,环境编译
Ubuntu12.04下编译和下载Android4.0.3源码
在ubuntu18.4平台上编译FFmpeg-3.4 for Android .os库文件,为 Android 平台上使用库文件FFmpeg对视频音频进步的处理。
Ubuntu 10.04下Android编译环境搭建
在Ubuntu10.04下载和编译android 4.0源代码(四)
该文档是我刚进某公司时在虚拟机ubuntu下搭建android编译环境的过程,内容包括jdk的配置,虚拟磁盘的扩展,以及编译编译android需要安装哪些包等
ubuntu下android编译环境搭建大的洼地阿文阿文给挖个阿虎文化和人生萨尔阿文人a
使用虚拟机安装Ubuntu,然后下载、编译和安装Android源代码
简单介绍如何在Ubuntu下进行Qt的静态编译,并用编译出来的静态库编译我们的程序
Ubuntu64位编译Android源码出错解决办法
在Ubuntu上下载、编译和安装Android最新内核源代码
Ubuntu_10.04上编译Android_2.3Ubuntu_10.04上编译Android_2.3
ubuntu18.04版本以上系统编译君正软件包问题解决方案及相应软件包。 在ubuntu23.04版本系统中验证通过。 主要解决M4,fakeroot,以及autocnf软件版本升级。 fakeroot软件编译报出的‘_STAT_VER’ undeclared 错误,...
在Ubuntu10.04下载和编译android 4.0源代码(三)
ubuntu10.04及12.04编译android环境搭建.txt
本次实验环境为Ubuntu10.04、Android版本为2.1,采用的是ARM9 Mini6410开发板自带的Android源码
OpenCV-2.4.0在ubuntu12.04下编译出的目标文件,可以直接使用,详情查看本人博客:http://blog.csdn.net/shuxiao9058/article/details/7525376