一.背景

OS: ubuntu 16.04

二.配置交叉编译环境

2.1 安装openjdk

sudo apt-get install openjdk-7-jdk

2.2 使在同一台机器上可以编译android 5.1及以下的版本

sudo /var/lib/dpkg/info/openjdk-7-jdk:amd64.prerm remove

2.3 安装tools\lib

sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev \

libesd0-dev libwxgtk3.0-dev squashfs-tools build-essential zip curl \

libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils \

xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev \

lib32readline-gplv2-dev gcc-multilib libswitch-perl \

libssl1.0.0 libssl-dev

2.4 源码

git clone https://TeeFirefly@bitbucket.org/T-Firefly/firefly-rk3288.git

2.5 编译内核

cd firefly-rk3288

cd kernel

make firefly-rk3288_defconfig

make -j8 firefly-rk3288.img

2.6 编译 Android

make -j8 (默认编译出来的是userdebug版本)

2.6.1 此时出现以下错误:

build/core/main.mk:46: *  You are using version 4.1 of make.

build/core/main.mk:47: *  Android can only be built by versions 3.81 and 3.82.

2.6.2 解决方案:安装低版本make

wget ftp://ftp.gnu.org/gnu/make/make-3.82.tar.bz2

tar xvf make-3.82.tar.bz2

cd make-3.82

./configure

make

sudo make install

cd /usr/bin

sudo cp make make_back

sudo cp /usr/local/bin/make ./

继续make -j8

2.6.3出现以下错误:

You are attempting to build with an unsupported JDK.

You use OpenJDK but only Sun/Oracle JDK is supported.

2.6.4 解决方案:使用sun/oracle jdk

sudo apt-get update

sudo apt-get remove openjdk* (卸载openjdk)

sudo apt-get install oracle-java6-installer (无法安装)

那么直接下载http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u21-oth-JPR

chmod u+x jdk-6u45-linux-x64.bin

sudo ./jdk-6u45-linux-x64.bin (执行完就出现一目录,将其路径设置到PATH中,如/home/jellojdk/jdk1.6.0_45/bin,那么PATH=/home/jellojdk/jdk1.6.0_45/bin:$PATH)

update-alternatives --display java (当前sdk)

java - 手动模式

link best version is /usr/lib/jvm/java-9-oracle/bin/java

链接目前指向 /usr/lib/jvm/java-9-oracle/bin/java

link java is /usr/bin/java

/usr/lib/jvm/java-9-oracle/bin/java - 优先级 1091

update-alternatives  --install  /usr/bin/java java /home/jello/jdk/jdk1.6.0_45/bin/java 1092(设置优先级为1092,比1091高)

重新打开一终端,输入java -version 输出如下信息:

jello@jello-Inspiron-N4050:~$ java -version

java version "1.6.0_45"

Java(TM) SE Runtime Environment (build 1.6.0_45-b06)

Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)

source build/envsetup.sh

lunch rk3288-eng

继续make -j8

./mkimage.sh

rk3288 android4.4,ubuntu16.04下firefly rk3288的编译安卓4.4相关推荐

  1. 完美解决Ubuntu16.04下配置vs code编译环境

    Vs Code环境配置 引用文献 其他参考:在Ubuntu中安装VSCode并配置C/C++开发环境的方法步骤 sudo apt-get update //访问源列表,并读取软件列表 sudo apt ...

  2. ubuntu16.04 下安装Opencv2.4.9

    ubuntu16.04 下安装Opencv2.4.9 OpenCV的源码download from:  https://sourceforge.net/projects/opencvlibrary/? ...

  3. ubuntu16.04下ROS最新换源方法,解决Hash sum mismatch 问题

    1.更换源 备份原始数据 cd /etc/apt/ sudo cp sources.list sources.list.bak sudo gedit sources.list 科大源: deb htt ...

  4. Ubuntu16.04下Mongodb官网卸载部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 前期博客 Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐) https://docs.mongodb.com/manual/tutorial/ins ...

  5. Ubuntu16.04下面的vs code出现Unable to activate CppCheck analyzer

    Ubuntu16.04下面的vs code出现Unable to activate CppCheck analyzer 解决方案: synaptic管理器中安装cppcheck和cppcheck-gu ...

  6. Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 在这篇博客里,我采用了非官网的安装步骤,来进行安装.走了弯路,同时,也是不建议.因为在大数据领域和实际生产里,还是要走正规的为好. Ubuntu16.04下Mongodb(离线安 ...

  7. linux系统脚本安装失败,ubuntu16.04下vim安装失败的原因分析及解决方案

    先给大家说下问题描述? 重装了ubuntu系统,安装vim出现了以下问题: sudo apt-get install vim 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信 ...

  8. vscode linux新建c语言,Ubuntu16.04下配置VScode的C/C++开发环境

    1. Vscode安装 Visual studio code是微软发布的一个运行于 Mac OS X.Windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器.第一种 ...

  9. Ubuntu16.04下禁用scp、sftp和winscp

    在上一篇博文<Ubuntu16.04 搭建FTP服务器,设置用户权限为只许上传.禁止下载和删除>中,我讲述了Ubuntu16.04下配置FTP,并且设定用户权限为只能上传数据,禁止下载和删 ...

最新文章

  1. 智能会议白板系统每日开发记录
  2. html5+原生js画的瀑布,果然程序员不适合做设计吗?
  3. 浪潮as5300技术方案_混闪存储AS5300G5
  4. 前端学习(516):两列布局的第三种解决方案
  5. 服务器查内存型号,服务器怎样查内存型号
  6. Selenium中文手册
  7. [2016百度之星 - 初赛(Astar Round2A)]Snacks
  8. CSS侦测方法(侦测是否支持某个CSS属性)
  9. 交换机芯片技术知多少
  10. 程序流程图的基本画法大全
  11. mac系统修改idea运行内存
  12. 用户行为分析-解决某游戏公司用户数量停滞问题,给出营销策略
  13. HP惠普笔记本Microsoft ACPI-Compliant System未知设备的解决办法
  14. python代码情话_程序员的土味情话~(内含表白代码)
  15. 幻方解法之horse法生成奇阶幻方
  16. axure9总是崩_axure老是崩怎么办
  17. css 超出文字头尾相接滚动_【转载】CSS3 ——文本超出设置 超出显示...与跑马灯效果...
  18. 为什么usb计算机连接无法识别,无法识别usb设备,教您电脑出现无法识别usb设备怎么办...
  19. MySQL utf8mb4字符集按中文拼音排序
  20. uni-app 最简单的显示隐藏

热门文章

  1. C++实现黑客帝国流星雨效果
  2. mysql pdo 读取字段名_PHP使用PDO从mysql读取大量数据处理详解
  3. 外服封号_外服大主播Diss原神:因为吐槽氪金体验差,米哈游把我号封了
  4. 微信小程序之通过Canvas生成图片保存到手机相册
  5. linux红帽子怎么配置dhcp,LinuxDHCP的高级配置如何应用呢?
  6. gitbook新版本 build命令导出的html不能跳转?
  7. python互斥锁原理_python并发编程之多进程1------互斥锁与进程间的通信
  8. FIR仿真module_04
  9. LUA: lua基础.
  10. iOS上传头像, 相册权限,相册权限,拍照上传,相册选择图片,拍照页面语言设置,保存到相册...