Chinaunix首页 | 论坛 | 博客
  • 博客访问: 200142
  • 博文数量: 37
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 375
  • 用 户 组: 普通用户
  • 注册时间: 2015-04-23 21:00
个人简介

潜心静气。。慢慢出成果

文章分类

全部博文(37)

文章存档

2018年(5)

2017年(6)

2016年(23)

2015年(3)

我的朋友

分类: Android平台

2016-05-03 21:58:19

安卓序言:
经过八个月的Am335x的linux的项目实战,已经基本熟悉了335x的开发思路,只是很多硬件的移植细节还不是很清楚,但是为了近期的继续培养自己的探索精神,决定利用自己的私有时间,将公司的开发平台,跑起来安卓,直到挂起来文件系统。
linux:
之前打算建立写博客的习惯,怎奈,发表四篇后,写了很多,只是一直忘了发表。以后会陆续发表自己做335x的linux和安卓过程。
废话少说,进入到安卓开发的入门,就是开发环境的建立和源码的获得。
建立开发环境过程中,走了很多的弯路,明明是要求是64位,偏偏玩的自己安装的都是32位。生活在于折腾。
am335x_mmcsd_images-ver1.0
 |-- Boot_Images
 |   |-- boot.scr
 |   |-- MLO
 |   |-- u-boot.bin
 |   |-- uImage
 |   `-- uImage_host (replace this as uImage if you need USB host functionality)
 |-- Filesystem
 |   `-- rootfs_am335x.tar.bz2
 |-- Media_Clips
 |   |-- Audio
 |   |-- H264
 |   |-- Images
 |   `-- MPEG-4
 `-- mkmmc-android.sh
1.开发源码包下载。

ubuntu:32位
2.建立PDF sourceinsight putty的串口打印的工具移植。
apt-get install okular//pdf
source insight//wine source insight.exe
putty的安装如okular一样的方式。
apt-get install putty
3.chmod 777 XXXX.bin
./xxxx.bin
raise GitError('%s: %s' % (command[1], e))
error.GitError: config: [Errno 2] No such file or directory

原因:没有装git,faint
解决:
sudo apt-get install git
sudo apt-get install git-core

4./home/android/TI-Android-ICS-4.0.3-DevKit-EVM-SK-3.0.1/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin  在.bashrc中加入。
5.编译uboot。通过
make distclean
make am335x_evm_config
修改Makefile
ARCH :=arm
CROSS_COMPILE :=arm-eabi-gcc
6.编译内核。
首先make distclean
然后修改Makefile文件的ARCH :=arm
CROSS_COMPILE:=arm-eabi-
执行make menuconfig
选择Load an Alternate Configuration File  
然后输入am335x_evm_android_defconfig
 Save an Alternate Configuration File
.config
生成的工具在uboot的tools里面,把这个mkimage考到/usr/bin下就行了:

#cp mkimage /usr/bin/mkimage
至此,开发环境正式搭建。
7.制作启动用SD卡文件。

通过 USB 读卡器连接Ubuntu 系统上的微型 SD 卡 (至少 2 GB 大小)

 tar -jxvf TI_Android_EVM-sk.tar.bz2
./mkmmc-android.sh /dev/sd
上面的步骤会生成有三个分区的 SD 卡。

    boot -启动映像 (引导装载机、 启动脚本和内核)
    rootfs-文件系统 (Android ICS 4.0.3)
    data -媒体剪辑 (音频、 视频和图像)
./mkmmc-android.sh /dev/sdb ./Boot_Images/MLO ./Boot_Images/u-boot.img ./Boot_Images/uImage ./Boot_Images/uEnv.txt ./rootfs.tar.bz2

8.使用ttyUSB0
 lsmod | grep usbserial
如果有usbserial,说明系统支持USB转串口
插上USB转串口,在终端输入命令#dmesg | grep ttyUSB0,
如果出现连接成功信息,则说明ubuntu系统已经识别该设备了。
make TARGET_PRODUCT=am335xevm_sk

遇到问题:
/bin/bash: bison: command not found
build/core/config.mk:268: *** Error: could not find jdk tools.jar, please install JDK6, which you can download from java.sun.com.  Stop.

9.安装bison和JDK6
下载JDK
在china net上下载的
修改/etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.6.0_XX/bin/java" 1
  $ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.6.0_XX/bin/javac" 1
  $ sudo update-alternatives --config java
  $ sudo update-alternatives --config javac
然后执行java -version
Error occurred during initialization of VM java/lang/NoClassDefFoundError:
解决办法:看环境变量。
查看需要确认的就是lib和jre/lib文件夹中的rt和tools是否是打包后的形式,如果发现rt.pack 和 tools.pack 那么多半问题就出在这里。
unpack200 rt.pack rt.jar
unpack200 tools.pack tools.jar
16.文件系统:
编译 Android 系统执行编译:与我处于开发调试模式的区别。
我所使用的方式是用SD卡,而也是可以通过使用打包的Android的打包来开发的。
http://www.ibm.com/developerworks/cn/opensource/os-cn-android-build/

阅读(3553) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~