下载源码包,解包后进入Android-SDK/tools目录.

1 先安装dtc-master和fakeroot工具.
dtc-master安装方法:
解包后,在源码目录下: make && make install

fakeroot安装方法:
解包后,在源码目录下: ./configure ; make && make install


2 安装jdk, 注意因a33提供的是android4的代码,需要使用到原sun公司的jdk. android5及以上可用openjdk.

在终端执行:
./jdk-6u45-linux-x64.bin //它会在当前目录下解包同jdk1.6.0_45

在/etc/bashrc文件里设置环境变量:

    export JAVA_HOME=/disk3/myown/A33/Android-SDK/jdk1.6.0_45export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH 

设置完成后,注消系统重登后环境变量生效.
可用”java -version” / “which java”确认是不是使用配置的jdk.

如还不是,则需作下面操作:

     update-alternatives --install /usr/bin/java java /disk3/myown/A33/Android-SDK/jdk1.6.0_45/bin/java 300update-alternatives --config java //弹出选项后,选择/disk3/myown/A33/Android-SDK/jdk1.6.0_45/bin/java即可

3 编译uboot, linux内核源码:
解包A33_Vstar_Lichee_20170227.tar.bz2后,进入lichee目录下终端操作:

  ./build.sh config
    All available chips:0. sun8iw5p1Choice: 0All available platforms:0. android1. dragonboard2. linuxChoice: 0All available kernel:0. linux-3.4Choice: 0All available boards:0. evb1. maple2. redwood3. vstar4. y25. y3Choice: 3 

//第一次编译前,需要给内核准备一个默认配置
cp linux-3.4/a33_vstar_defconfig linux-3.4/.config

//然后执行脚本,编译:
./build.sh

//它会把所用的交叉编译器解包到:lichee/out/sun8iw5p1/android/common/buildroot/external-toolchain
//执行完毕后,在lichee/out/sun8iw5p1/android/common目录下有生成的内核镜像,驱动模块的ko文件, 内存文件系统,uboot的镜像等.


4 android系统源码编译:
解包Android-SDK目录下的A33_Vstar_Android_20170227.tar.bz2后,进入android目录:
在终端上的执行:

   . build/envsetup.sh   //让android里面配置的环境生效lunch   //选择要编译的方案, 选择"6. vstar-eng"extract-bsp  //会复制内核镜像和驱动模块make -j4     //编译编译需要几个小时,完成后在 android/out/target/product/vstar/目录下生成 boot.img recovery.img system.img

//在编译过程,如发生下面这样的错误,则安装gperf库即可
File “scripts/make_css_property_names.py”, line 238, in
in_generator.Maker(CSSPropertiesWriter).main(sys.argv)
File “/disk3/myown/A33/Android-SDK/android/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py”, line 119, in main
writer.write_files(options.output_dir)
File “/disk3/myown/A33/Android-SDK/android/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py”, line 77, in write_files
self._write_file(output_dir, generator(), file_name)
File “scripts/make_css_property_names.py”, line 233, in generate_implementation


5 编译x86版的busybox程序, 用pack命令生成镜像时会使用busybox程序的功能.
解包Android-SDK/tools/busybox-1.27.2.tar.bz2源码包后, 进入busybox-1.27.2目录下终端操作:

    make menuconfig  //弹出配置界面后,无需作任何改变,保存退出即可.make && make install  //完成后,"cp _install/bin/busybox /bin/"把busybox程序复制到系统的/bin目录下.

6 在android源码的根目录下,打包出镜像文件,在终端下执行:
pack

//生成文件在Android-SDK/lichee/tools/pack/sun8iw5p1_android_vstar.img

02 A33 Android系统源码编译相关推荐

  1. Android系统源码编译环境搭建(清华镜像,想编译什么版本都可以,只是有JDK和make的版本要求)

    上一次,写得有点匆忙,现在补上清华镜像源码的详细下载方法. 编译Android 5.1源代码并烧录到Nexus4(用的是清华镜像的源) 环境准备: 基本环境:ubuntu-14.04-desktop- ...

  2. Android系统源码编译最重要的一步

    2019独角兽企业重金招聘Python工程师标准>>> 就是下载源码 1.突破网络限制(VPN,代理什么的) 2.买个百度云VIP,找资源.下载速度很快 转载于:https://my ...

  3. ubuntu-18.04.4 Android系统源码TP1A(Android 13)下载及编译

    继上一篇博客介绍了VMware Workstation15 配置ubuntu-18.04.4,这篇主要介绍安装后环境搭建,Android源码的下载与编译.小编当前下载的是当前最新的代码,是主干分支代码 ...

  4. android系统源码7.1.2_r8下载,编译,运行到nexus5X上,修改源码并编译SDK进行测试

    一,学习android系统源码下载,编译的作用 1,可以自己 DIY 自己的rom系统,从系统层面,宏观的加深理解 android系统 2,编译自己的 userdebug(原生root权限) rom, ...

  5. 编译Android系统源码--搭建环境

    下载Ubantu14 Google官方建议使用Ubuntu 14 下载路径 双系统安装参考 下载VMware 建议:VMware Workstation 16 Pro 下载路径 下载Android系统 ...

  6. android 系统源码介绍

    一.系统目录 1.1 系统目录含义 1.2 系统jar作用 Android系统源码目录 system/framework 下各个jar包的用途 am.jar:终端下执行am命令时所需的java库.源码 ...

  7. 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

    作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...

  8. Android FrameWork学习(二)Android系统源码调试

    点击打开链接 通过上一篇 Android FrameWork学习(一)Android 7.0系统源码下载\编译 我们了解了如何进行系统源码的下载和编译工作. 为了更进一步地学习跟研究 Android ...

  9. android 系统源码调试 局部变量值_如何方便快速的整编Android 9.0系统源码?

    点击上方"刘望舒",选择"星标" 多点在看,就是真爱! 作者 :  刘望舒  |  来源 :刘望舒的博客地址:http://liuwangshu.cn/fram ...

最新文章

  1. Python 3 判断2个字典相同
  2. 软考已报名可以更改科目吗
  3. 解释一下python中的//,%和**运算符
  4. 牛客题霸 NC9 二叉树中是否存在节点和为指定值的路径
  5. spring 依赖注入总结
  6. Interlocked..::.Add 方法
  7. 纽约州交通事故数据可视化
  8. 安装mysql输入_安装mysql
  9. 关于假人皮肤外侧热传导问题的差分法求解
  10. python import 搜索包路径的机制,以及添加自定义python包的方法
  11. 风控模型——评分卡模型
  12. ele组件JS弹框(确定或取消操作)
  13. 使用ffmpeg来将mp4视频转换成gif格式图片
  14. foxmail绑定qq邮箱服务器,开通IMAP服务 用Foxmail远程操作QQ邮箱
  15. Unity使用脚本动态修改材质球的颜色
  16. java 数据类型
  17. 研究内核安全必读的10本书
  18. 根据经纬度计算两点之间的距离、点到直线的距离
  19. 【系统】查看文件的md5值
  20. python科学计算够用吗_为何选用python进行科学计算

热门文章

  1. java excel 数据有效性_Java设置Excel数据验证(数据有效性)
  2. E/DMOS倒相器工作原理详解及分析
  3. SMPP是一种通用的短信接口协议
  4. 【本科毕业论文适用】文献综述这样写,速肝文献综述2000字
  5. 电脑如何恢复误删的文件?
  6. 信息论与编码技术之无失真信源编码小结
  7. 微信小程序预览常见问题 未找到app.json这个怎么解决
  8. 滑铁卢大学计算机与清华大学,【2019 北京智源大会】Deep Learning, NLP, and Bioinformatics 李明/ 滑铁卢大学计算机科学系教授...
  9. 下拉框系统甄选火星推荐_下拉框词工具都选16火星软件,下拉框词工具佳选23火星...
  10. 卸载重装Android Studio导入先前的版本,或者是误判SDK installed解决方法。(包含window,mac,Linux)