Android源码编译及启动模拟器

源码下载

Ubuntu18.0

(1)更改下载源

源码下载过程比较慢,可以更改apt源为国内源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo vi /etc/apt/sources.list

修改内容如下:

#添加阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

(2)安装源码下载工具

sudo apt install curl python git
 
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
 
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
chmod +x repo
sudo mv ./repo /usr/local/bin
echo "export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'" >> ~/.bashrc

(3)下载源码

mkdir aosp10
cd aosp10
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-10.0.0_r1
repo sync -j4

下载过程很顺利,没出现问题。

(4)安装环境依赖

sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig

源码编译

本来想编译arm64版本的,奈何电脑是x86架构的,也能跑起来,但是效果很差,所以选择了x86_64-eng版本的

cd aosp10
source build/envsetup.sh
lunch
aosp_x86_64-eng
make -j16

在这里插入图片描述
在这里插入图片描述
可以根据电脑配置选择-j之后的参数
在这里插入图片描述
第一次编译出现两个问题
(1)SWAP空间分配过少
在这里插入图片描述
可以参考这个链接 https://blog.csdn.net/weixin_42171170/article/details/105784057 解决办法
(2)API问题
按照报错提示,执行指令即可
在这里插入图片描述

make test-api-stubs-docs-update-current-api

最终成功编译
在这里插入图片描述

启动模拟器

	如果是刚刚编译好的,直接输入emulator指令即可,否则,执行这一系列操作
cd aosp10
source build/envsetup.sh
lunch
aosp_x86_64-eng
emulator
	第一次没能成功跑起来,出了几个小问题,不过都很好解决。

(1)emulator: ERROR: x86_64 emulation currently requires hardware acceleration!
Please ensure KVM is properly installed and usable.
CPU acceleration status: This user doesn’t have permissions to use KVM (/dev/kvm)
解决:sudo chown 用户名 -R /dev/kvm
(2)statvfs(‘/aosp10/out/target/product/generic_x86_64/snapshots/default_boot/ram.img’) failed: No such file or directory
解决:sudo chgrp 用户名ram.img chmod 766 ram.img
(3)qemu_ram_alloc_user_backed: call 段错误 (核心已转储)
解决:更改显卡驱动为图片中的那个,位置在软件更新里
在这里插入图片描述
更新完重启时,我还遇到了一个小问题,进不去Ubuntu桌面,卡在了命令行界面,且出现了报错信息,鼠标键盘都卡死了,强制重启了,进入了Ubuntu高级选项进行了恢复,成功解决。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值