ubuntu10 04源怎么在Ubuntu编译Android2.3源代码以及制作自己的SDK

ubuntu10 04源  时间:2022-02-24  阅读:()

怎么在Ubuntu编译Android2.3源代码以及制作自己的SDK

网上下一个软碟通软通(UitraISO)工具、然后去官网上下载一个64位ubuntu.*.iso系统文件、然后软碟通工具自己制作一个USB启动盘(非常简单)不会用软碟通的百度一下一大把!、系统最好是10.40以上的版本   使用的是ubuntu官网下载的ubuntu10.04 LTS 64位版本(-amd64.iso)   配置软件源:   系统安装完毕以后应该首先换一个速度快的软件源   一般用的是ubunt   不然下载各种更新和软件包的时候非常的慢   安装JDK:   我要编译的是2.3姜饼的源代码 所以需要使用jdk6 (还需要是64位的系统)   如果是32为系统藐视jdk要安装jdk5.0的吧!藐视说有个doc什么的不行!所以系统一般装64的、如果是32的小伙们赶快把jdk看看   安装方法:   打开终端   输入   sudo add-apt-repository "deb "   sudo add-apt-repository "deb-src "   sudo apt-get update   sudo apt-get install sun-java6-jdk   就安装好了 (ubuntu10.04 LTS版会自带那两个源)   并且不需要配置环境变量   这一步可以参考   安装各种软件包:   终端中输入   sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos texinfo libsdl-dev libwxgtk2.6-dev   最后三个是我补充的 其他都是官方文档提供的   这一步可以参考   下载源代码:   打开终端并输入   mkdir ~/bin   PATH=~/bin:$PATH   这两句是在你的个人文件夹下创建了一个名字叫bin的文件夹 并且把其加入到了环境变量中   再输入   curl ; ~/bin/repo   chmod a+x ~/bin/repo   这两句首先在bin目录下面下载了一个repo文件 repo简单来说就说用来版本控制的 我们就是用的它来同步代码   然后建立一个用来存放源代码的文件夹 我的这个文件夹的名字是android2.3   输入   mkdir android2.3   cd android2.3   进入android2.3目录   输入   repo init -u git://androi/platform/manifest.git -b gingerbread   在此说明一下:   安卓总称:“机器人”   1.5系统:“纸杯蛋糕”   Android 1.6 Donut甜甜圈   Android 2.0 Eclair松饼   Android 2.1 Eclair松饼   Android 2.2 Froyo冻酸奶   Android 2.3 Gingerbread姜饼(以上系统都是用于手机的)官方消息说2.4准备出来了!至于3.0目前只用于平板电脑   Android 4.0 Ice Cream Sandwich(简称ICS,冰淇淋三明治),   表示你需要的代码是姜饼的 所以最后是gingerbread 如果是2.2代码 就把gingerbread改成froyo   然后你需要输入你的名字跟邮箱地址   如果提示找不到repo命令的话 需要重新设置环境变量 就是之前的PATH=~/bin:$PATH   输入   repo sync   开始同步代码 这个过程会根据你的网速来决定快慢   这一步需要下载的数据有3g那么大   可以续传 一次没下完也没关系   如果之前就已经下过一次的话 只需要把源代码目录(我的是android2.3)下有一个叫.repo的隐藏文件夹里的projects文件夹备份出来就可以了   以后还需要同步的时候再把projects文件夹拷贝回去   ctrl+h查看隐藏文件   这一步可以参考   编译整个源代码:   cd android2.3   进入你的代码目录   输入   . build/envsetup.sh   注意.和build中间有个空格   输入   lunch full-eng   make -j2   输入make就是开始编译代码了 加一个-j2参数就是开两个线程去编译 速度会快些 我花了两个小时的时间   编译完毕以后马上输入   emulator   就可以运行模拟器了 系统能跑起来就说明编译成功了   如果提示找不到emulator命令的话   需要添加环境变量   在android2.3目录下的out/target/product/generic文件夹下会看到system.img   能看到的话应该算是成功了   这一步可以参考   编译SDK:   这一步在官方网站上没有说明   但是在源代码文件夹里面有文档提到了   就是在android2.3/sdk/docs目录下有一个叫howto_build_SDK.txt的文件介绍了如何编译SDK   原文   Then once you have all the source, simply build the SDK using: $ cd ~/my-android-git $ . build/envsetup.sh $ lunch sdk-eng $ make sdk   看来不需要先编译整个系统再编译SDK 可以直接上来就编译SDK   按提示输入   make到时候也可以加上-j参数 比如 make -j2 sdk   但是不推荐 因为容易编译失败 而且编译SDK只需要二十多分钟到时间 不算很长   当出现   Package SDK: out/host/darwin-x86/sdk/android-sdk_eng.<build-id>_mac-x86.zip   的时候 就表示编译成功了 其中<build-id>默认是系统的用户名   howto_build_SDK.txt中还提到了编译ADT插件   我发现自己编译到ADT插件竟然认不到platform 自己编译出来到SDK也一样   原因不明   只要使用官方的SDK和ADT就没有问题了   具体就是把自己编译出来platform拷贝到官方SDK里到platforms文件夹下 搞过Android开发都懂的   最后:   非常简单的一步   就是直接修改源代码然后编译SDK就可以得到自己的SDK了   我就示范一个简单的例子 抛砖引玉   首先我找到TextView的代码   在frameworks/base/core/java/android/widget 如图   我在updateTextColors方法的开头添加了一句System.out.println   打印了一句话"Source Code Changed"   updateTextColors方法会在TextView的setTextColor方法中被调用   好 保存   编译   然后使用这个platform   新建一个项目   调用一下TextView的setTextColor方法看看有什么效果   一个很简单的例子   看看   Source Code Changed被打出来了   SDK修改成功

618云上Go:腾讯云秒杀云服务器95元/年起,1C2G5M三年仅288元起

进入6月,各大网络平台都开启了618促销,腾讯云目前也正在开展618云上Go活动,上海/北京/广州/成都/香港/新加坡/硅谷等多个地区云服务器及轻量服务器秒杀,最低年付95元起,参与活动的产品还包括短信包、CDN流量包、MySQL数据库、云存储(标准存储)、直播/点播流量包等等,本轮秒杀活动每天5场,一直持续到7月中旬,感兴趣的朋友可以关注本页。活动页面:https://cloud.tencent...

亚州云-美国Care云服务器,618大带宽美国Care年付云活动服务器,采用KVM架构,支持3天免费无理由退款!

官方网站:点击访问亚州云活动官网活动方案:地区:美国CERA(联通)CPU:1核(可加)内存:1G(可加)硬盘:40G系统盘+20G数据盘架构:KVM流量:无限制带宽:100Mbps(可加)IPv4:1个价格:¥128/年(年付为4折)购买:直达订购链接测试IP:45.145.7.3Tips:不满意三天无理由退回充值账户!地区:枣庄电信高防防御:100GCPU:8核(可加)内存:4G(可加)硬盘:...

提速啦(24元/月)河南BGP云服务器活动 买一年送一年4核 4G 5M

提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑 由赣州王成璟网络科技有限公司旗下赣州提速啦网络科技有限公司运营 投资1000万人民币 在美国Cera 香港CTG 香港Cera 国内 杭州 宿迁 浙江 赣州 南昌 大连 辽宁 扬州 等地区建立数据中心 正规持有IDC ISP CDN 云牌照 公司。公司购买产品支持3天内退款 超过3天步退款政策。提速啦的市场定位提速啦主...

ubuntu10 04源为你推荐
onboardon board有这个牌子吗md5值哈希值 散列值 MD5值 都是什么意思啊云图片简单易学画的云彩图片郭凡生馬云的簡介3Q网关和路由器的区别网关和路由器的具体区别在哪里呀?jqlDX5JQL8WDPMW求大神帮查下是不是行货苹果调度系统1.说明高级调度、中级调度和低级调度的基本含义。php论坛用php写一个论坛,重点是什么?还有具体的功能,谢谢smartuploadSmartUpload组建实现文件上传下载,我要把文件保存到项目中的某个文件夹中,该如何实现?最好有程序参考faq是什么意思fans是什么意思?
四川虚拟主机 济南域名注册 成都主机租用 vps教程 国外vps租用 duniu linode代购 kddi ixwebhosting 服务器cpu性能排行 有益网络 umax120 创建邮箱 免费网络 免费网络空间 乐视会员免费领取 移动王卡 美国代理服务器 服务器是什么意思 傲盾代理 更多