Chinaunix首页 | 论坛 | 博客
  • 博客访问: 49020
  • 博文数量: 13
  • 博客积分: 309
  • 博客等级: 二等列兵
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-15 08:59
文章分类
文章存档

2011年(13)

分类: 嵌入式

2011-10-30 00:42:33


从TI的官方下载Gingerbread_2.3.4 的源码后,参考开打指南进行编译,过程会出错,主要是系统配置问题。经过一些折腾,终于成功编译通过,现在记录如下,供参考。

  • 操作系统的选择
    TI默认以ubuntu为基础,说的是ubuntu 10.04+ 都可以,但实际上用了太新的版本可能会出问题。至少我在11.10上是遇到了一些古怪的问题,后来干脆退而求其次,用回了ubuntu 10.04。之所以选择10.04,还一个原因是因为这是一个LTS版本。
    32位还是64位?建议选择64位系统。因为编译android需要的内存较大,我的电脑有4GB内存,所以用了64位系统,当然,也可选择32位系统。但是,如果编译android-2.2版本,则必须使用64位版本。

  • 下载源码包
    TI AM35x Android开发包下载地址:
   
   
  • 系统配置
    TI的开发指南可供参考,但是不全,完全按照TI的手册进行操作,很有可能出错。最好的资料还是参考android的网页:
    TI的操作没提到32和64位的事情,如果用64位,就算已经安装了IA32兼容包,在编译过程中很有可能还会遇到其他问题,如stubs-32.h文件找不到,或者找不到-lz等问题,这些问题如果按照android的链接操作,都能解决。(分别是g++-multilib、lib32z-dev的缘故)
    另外,在安装java的最后一步,很有可能失败,只需安装sun-java6-plugin就可以了。
  1. $ sudo add-apt-repository "deb lucid partner"
  2. $ sudo add-apt-repository "deb-src ubuntu lucid partner"
  3. $ sudo apt-get update
  4. $ sudo apt-get install sun-java6-jdk
  5. $ sudo update-java-alternatives -s java-6-sun

  6. $ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  7.   zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
  8.   x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
  9.   libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
  10.   libxml2-utils

  • 编译android
    编译android按照TI的说明即可。
    j的值。n的值是处理器线程数目的2倍,如4核8线程的I7处理器,可设置为j16,经过实验,编译整个Gingerbread_2.3.4,用的时间仅为1小时多一点,很是可观。
  1. make TARGET_PRODUCT=am3517evm clean
  2. make TARGET_PRODUCT=am3517evm OMAPES=3.x -j16

  • 文件系统打包
    按照TI的说明即可。


附:android资源  
阅读(2404) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~