ubuntu16.04下firefly rk3288的编译安卓4.4
一.背景
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
ubuntu16.04下firefly rk3288的编译安卓4.4的更多相关文章
- Ubuntu16.04下的modules模块编译加载
一.首先编写对应的驱动程序的相关内容:(最简单的hello.c程序) #include<linux/init.h> #include<linux/module.h> MODUL ...
- ubuntu16.04下的htk安装编译
HTK(HMM Tools Kit)是一个剑桥大学开发的专门用于建立和处理HMM的实验工具包[1],主要应用于语音识别领域,也可以应用于语音合成.字符识别和DNA排序等领域.HTK经过剑桥大学.Ent ...
- 【原创】Octovis在Ubuntu16.04下运行出现core dump的解决方案
本人SLAM研究新手,使用系统为Ubuntu16.04.本文原址:http://www.cnblogs.com/hitlrk/p/6667253.html 在学习SLAM的过程中,使用Octomap进 ...
- Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)
Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python) 前提是已经安装了python2,python3 1)安装各种依赖库 sudo apt-get update ...
- ubuntu16.04下笔记本自带摄像头编译运行PTAM
ubuntu16.04下笔记本自带摄像头编译运行PTAM 转载请注明链接:https://i.cnblogs.com/EditPosts.aspx?postid=9014147 个人邮箱:feifan ...
- Ubuntu16.04下编译OpenCV2.4.13静态库(.a文件)
Ubuntu16.04下编译OpenCV2.4.13静态库(.a文件) https://blog.csdn.net/woainishifu/article/details/79712110 我们在做项 ...
- Ubuntu16.04下编译安装及运行单目ORBSLAM2
官网有源代码和配置教程,地址是 https://github.com/raulmur/ORB_SLAM2 1 安装必要工具 首先,有两个工具是需要提前安装的.即cmake和Git. sudo apt- ...
- ubuntu16.04下安装artoolkit5
目前对AR技术的常见理解就是CV(Computer Vision)+CG(Computer Graphic).CV的方法很多,简单些比如FREAK+ICP(ARToolKit中的NFT),复杂些就是S ...
- ubuntu16.04下caffe以cpu运行faster rcnn demo
参考https://haoyu.love/blog404.html 获取并修改代码 首先,我们需要获取源代码: git clone --recursive https://github.com/rbg ...
随机推荐
- oracle(七)索引
一.B-Tree索引 (1). 选择索引字段的原则: 在WHERE子句中最频繁使用的字段 联接语句中的联接字段 选择高选择性的字段(如果很少的字段拥有相同值,即有很多独特值,则选择性很好) Oracl ...
- 高并发秒杀系统方案(集成Mybatis和Redis)
1.集成Mybatis 第一步,添加依赖: <dependency> <groupId>org.mybatis.spring.boot</groupId> < ...
- UIPageViewController基本使用
UIPageViewController基本使用 @interface ViewController ()<UIPageViewControllerDelegate,UIPageViewCont ...
- MYSQL中的BlackHole引擎
MYSQL中的BlackHole引擎 http://blog.csdn.net/ylspirit/article/details/7234021 http://blog.chinaunix.net/u ...
- 使用navicat mysql 远程连接数据库
远程连接数据库,假设两台主机上都有navicat 客户端 远程主机A ip地址:192.168.100.91 ,port 3306,数据库用户名 rootA 密码 123456A 本地主 ...
- vue使用resource传参数
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 搭建私有yum仓库
需要工具: centos7 nginx rsync 新建文件夹存放镜像数据 mkdir /data mkdir /data/yum_data 同步数据 国内开源镜像站没有几个支持rsync,科技大学的 ...
- Word AddIn编译出现LINK2001 _main
链接错误"unresolved external symbol _main" Article last modified on 2002-3-2 ------------- ...
- 7.11 Models -- Customizing Adapters
一.概述 1. 在Ember Data中,和后台数据存储通信的逻辑存在于Adapter中.Ember Data的有一些内置的假设,一个 REST API 应该怎么看.如果你的后台约定和这些假设不同,E ...
- Python 在序列上跟踪索引和值
内置的enumerate() 函数可以很好的解决这个问题 >>> my_list = ['a', 'b', 'c'] >>> for idx, val in enu ...