UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

取消
显示结果 
搜索替代 
您的意思是: 
Highlighted
Xilinx Employee
Xilinx Employee
140 次查看
注册日期: ‎02-15-2012

【分享】为MPSoC编译Android 8的主要流程和命令

 

1. 参考文章

 

Getting Started with Android 8 v2018.1 for Xilinx MPSoC

https://github.com/MentorEmbedded/mpsoc-manifest/wiki/Getting-Started-with-Android-8-v2018.1-for-Xilinx-Zynq-UltraScale--MPSoC

 

2.测试环境

 

Ubuntu 16.04

 

3.安装Ubuntu软件包命令


sudo apt-get install openjdk-8-jdk git-core gnupg flex bison gperf \
build-essential zip curl zlib1g-dev gcc-multilib g++-multilib \
libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev \
lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip \
dosfstools e2fsprogs parted

4.下载Android源代码命令


mkdir -p ~/bin
PATH=~/bin:$PATH

curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

mkdir zynqmp-android8
cd zynqmp-android8

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

repo init -u git://github.com/MentorEmbedded/mpsoc-manifest.git \
-b zynqmp-android_8 -m release_android-8_xilinx-v2018.1.xml

repo sync -c


4.1 下载Android源代码的简化的打印输出


android$ repo sync -c
Fetching project platform/hardware/intel/common/libmix
Fetching project platform/external/gptfdisk
Fetching project platform/system/libhwbinder
Fetching project platform/frameworks/opt/vcard
Skipped fetching project platform/hardware/intel/common/libmix (already have persistent ref)
Skipped fetching project platform/external/gptfdisk (already have persistent ref)
... ...
* [new tag] android-2.3.5_r1 -> android-2.3.5_r1
* [new tag] android-2.3.4_r1 -> android-2.3.4_r1
... ...
Fetching project platform/pdk
... ...
aborted by user

android$ ls .repo/
manifests manifests.git manifest.xml project-objects projects repo

android$ ls .repo/repo/
color.py editor.py git_command.py git_refs.py manifest_xml.pyc progress.py README.md trace.py
color.pyc editor.pyc git_command.pyc git_refs.pyc pager.py progress.pyc repo trace.pyc
command.py error.py git_config.py git_ssh pager.pyc project.py repoc wrapper.py
command.pyc error.pyc git_config.pyc hooks platform_utils.py project.pyc subcmds wrapper.pyc
COPYING event_log.py gitc_utils.py main.py platform_utils.pyc pyversion.py SUBMITTING_PATCHES.md
docs event_log.pyc gitc_utils.pyc manifest_xml.py platform_utils_win32.py pyversion.pyc tests

 

5. 下载 MALI 400 Userspace Binaries命令


mkdir -p tmp_mali
tar -xf mali-400-userspace.tar -C ./tmp_mali
mkdir -p vendor/xilinx/zynqmp/proprietary
cp -r tmp_mali/mali/Android/android-8/MALI-userspace/r8p0-01rel0/* vendor/xilinx/zynqmp/proprietary/
rm -rf tmp_mali/

 

5.1 MALI 400 Userspace Binaries,最后应该含有下列文件。


$ tree vendor/xilinx/zynqmp/proprietary/
vendor/xilinx/zynqmp/proprietary/
├── lib64
│ └── libGLES_mali.so
└── libGLES_mali.so

6. 编译Android命令


source build/envsetup.sh
lunch zcu106-eng
make -j8

6.1 可以根据电脑CPU个数,设置命令“make -j8”中的数字。比如我使用了“make -j32”。

6.2 编译完成后,目录"out/target/product/zcu106/boot/"下有下列文件。

BOOT.BIN
kernel
u-boot.elf
uEnv.txt
uramdisk.img
zynqmp-zcu106-revA.dtb

1 条回复1
Moderator
Moderator
106 次查看
注册日期: ‎05-23-2018

回复: 【分享】为MPSoC编译Android 8的主要流程和命令

谢谢Hank的分享!

-------------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------------------------------------
0 项奖励