博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何在本机编译android8.0环境,适用于Ubuntu16.04
阅读量:2231 次
发布时间:2019-05-09

本文共 2066 字,大约阅读时间需要 6 分钟。

1.安装openjdk

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
2.安装vim编辑器
sudo apt-get install vim
3.配置环境变量
sudo vim /etc/profile
在该文件最下方加入如下代码:
  JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
  PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
  export JAVA_HOME  
  export PATH
保存退出
4.安装编译所需要的工具
sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386  libgl1-mesa-dev g++-multilib tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev
5.配置必要的编译信息
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
sudo apt-get install ccache
source ~/.bashrc
6.安装git
sudo apt-get install git
git config --global  user.email "your email"
git config --global  user.name "your name"
7.安装curl和repo用于同步
mkdir ~/bin
PATH=~/bin:$PATH
sudo apt install curl
内网:curl http://192.168.0.185/git-repo-downloads/repo > ~/bin/repo

外网:curl  >~/bin/repo

chmod a+x ~/bin/repo
8.创建目录
mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY
9.同步代码
内网:repo init -u git://192.168.0.185/android-x86/manifest.git -b multiwindow-oreo

外网:repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-8.0.0_r3

repo sync --no-tags --no-clone-bundle --no-repo-verify
10.建立multiwindow-oreo开发分支:
repo start multiwindow-oreo --all
11.编译
source build/envsetup.sh
lunch openthos_emu_x86_64-eng

m -j4

 

编译过程中有可能会报错,使用多线程编译报错后,可以改用单线程继续编译,方便查看报错的地方,改正后重新多线程编译

 

使用笔记本进行本地编译的时候有可能会出现Out of memory error

解决办法:

 

export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g"

./prebuilts/sdk/tools/jack-admin kill-server

./prebuilts/sdk/tools/jack-admin start-server

然后继续编译即可

 

12.下载模拟器:http://192.168.0.180/dl/sdk/emulator_oreo.tar.gz

解压emulator_oreo.tar.gz,将新编译生成的out/target/product/emu_x86_64/system-qemu.img和out/target/product/emu_x86_64/system/build.prop替换当前位置对应的文件。
13.运行模拟器
./run_emulator.sh

如果提示需要密码,需要cd 到emu_8.0/out/target/product/emu_x86_64/下,rm *.qcow2清除配置

 

转自http://blog.csdn.net/potatomagic/article/details/52933693

你可能感兴趣的文章
散落人间知识点记录one
查看>>
Leetcode C++ 随手刷 547.朋友圈
查看>>
手抄笔记:深入理解linux内核-1
查看>>
内存堆与栈
查看>>
Leetcode C++《每日一题》20200621 124.二叉树的最大路径和
查看>>
Leetcode C++《每日一题》20200622 面试题 16.18. 模式匹配
查看>>
Leetcode C++《每日一题》20200625 139. 单词拆分
查看>>
Leetcode C++《每日一题》20200626 338. 比特位计数
查看>>
Leetcode C++ 《拓扑排序-1》20200626 207.课程表
查看>>
Go语言学习Part1:包、变量和函数
查看>>
Go语言学习Part2:流程控制语句:for、if、else、switch 和 defer
查看>>
Go语言学习Part3:struct、slice和映射
查看>>
Go语言学习Part4-1:方法和接口
查看>>
Leetcode Go 《精选TOP面试题》20200628 69.x的平方根
查看>>
leetcode 130. Surrounded Regions
查看>>
【Python】详解Python多线程Selenium跨浏览器测试
查看>>
Jmeter之参数化
查看>>
Shell 和Python的区别。
查看>>
【JMeter】1.9上考试jmeter测试调试
查看>>
【虫师】【selenium】参数化
查看>>