自己编译Ubuntu make系统

系统 Linux
我在虚拟机里面Ubuntu make的,分了1G内存给他,处理器50%,一共花了两个小时才编译完成。编译完成后,在android目录下的out文件夹中,就是结果,也有两个G左右。

make经过长时间的发展,下面就这就来讲术Ubuntu make 这里我发表一下个人理解,下面就这就来讲术Ubuntu make。在 Ubuntu8.04下,应该一切很顺利,但是我装的是9.10版本,所以会有些问题。

先装jdk1.5,网上说1.6的有点小问题,所以我没装1.6,选择了1.5. 然后一边装必须的一些程序,apt-get install 很多乱七八糟的,网上能搜到,然后一边下载android源码。

源码的下载需要git,curl和repo,git和curl可以直接用apt-get install git-core curl就可以了然后下载repo curl http://android.git.kernel.org/repo >~/bin/repo

添加可执行权限sudo chmod +x repo

初始化repo repo init -u git://android.git.kernel.org/platform/manifest.git如果只需要某一个版本,比如我只要cupcakerepo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake

然后建个目录,mkdir android 进入cd android 下载repo sync
然后就等吧,大概两个G左右的内容,在获取39%的时候和95%的时候是最慢的,因为39%的有一百多M,95%的有差不多400M。

下载完之后,先不要Ubuntu make,因为还有几个问题:
1.如果直接Ubuntu make,会出现frameworks/policies/base/PolicyConfig.mk:22: *** No module defined for the given PRODUCT_POLICY (android.policy_phone).  Stop.错误。

解决办法:
在build/tools/findleaves.sh中的第89行,
这一句find "${@:0:$nargs}" $findargs -type f -name "$filename" -print |
改为find "${@:1:$nargs-1}" $findargs -type f -name "$filename" -print |

2.frameworks/base/tools/aidl/AST.cpp:10: error: 'fprintf' was not declared in this scope的错误

解决办法:
下载gcc-4.3和g++-4.3
apt-get install gcc-4.3 g++-4.3
大约十多兆,然后
进入/usr/bin cd /usr/bin
建个软连接
ln -s gcc-4.3 gcc
ln -s g++-4.3 g++

然后进入android目录下,执行Ubuntu make,就可以了。

我在虚拟机里面Ubuntu make的,分了1G内存给他,处理器50%,一共花了两个小时才编译完成。编译完成后,在android目录下的out文件夹中,就是结果,也有两个G左右。

在out/target/product/generic目录下,有三个img文件,system.img,ramdisk.img,userdata.img,这三个就是需要的android系统镜像文件,放到模拟器中运行就行了。

运行出来之后,进入设置里面,可以看到自己编译的标识呢,嘿嘿,很有成就感的。

【编辑推荐】

  1. 深入讲解配置ADSL拨号上网:ubuntu应用实例
  2. 畅谈简介Ubuntu Linux美国旧金山召开展会
  3. 介绍Canonical公司的Ubuntu云计算
  4. 非常强大的Ubuntu 9.10系统
  5. 闲聊详谈被攻击的Ubuntu系统
责任编辑:佚名 来源: CSDN
相关推荐

2009-12-30 16:38:44

Ubuntu内核

2010-01-04 18:56:06

Ubuntu内核

2010-02-06 15:21:34

2010-02-06 16:21:21

Ubuntu内核

2012-11-13 11:29:51

Ubuntu

2016-01-29 09:38:03

编程swiftubuntu

2010-01-04 10:06:56

Ubuntu gcc

2010-01-07 16:47:01

2010-02-06 17:08:58

Ubuntu ngin

2014-12-17 10:37:38

UbuntuHadoop

2010-01-07 14:31:59

Ubuntu编译

2010-01-07 17:35:03

Ubuntu mysq

2009-12-30 09:22:01

Ubuntu编译

2010-01-07 16:34:08

Ubuntu apac

2010-02-05 11:00:33

Ubuntu GCC

2023-03-09 11:02:40

linux编译源码

2009-05-08 16:41:47

LinuxUbuntu秘诀

2023-02-06 17:35:23

docker安卓源码

2011-09-14 15:04:47

Android 2.2

2009-12-07 09:52:06

Ubuntu9.10/
点赞
收藏

51CTO技术栈公众号