首先要下载相关的工具链

In addition to the packages requested on the Android website, the following packages are also needed:
$ sudo apt-get install uuid uuid-dev
$ sudo apt-get install zlib1g-dev liblz-dev
$ sudo apt-get install liblzo2-2 liblzo2-dev
$ sudo apt-get install lzop
$ sudo apt-get install git-core curl
$ sudo apt-get install u-boot-tools
$ sudo apt-get install mtd-utils
$ sudo apt-get install android-tools-fsutils
$ sudo apt-get install openjdk-8-jdk
$ sudo apt-get install device-tree-compiler
$ sudo apt-get install gdisk

注意的是如果Ubuntu 系统中已经安装了java7 ,现在编译imx8 需要java8.记得java要切换到java 8.
编译Android system

$ source build/envsetup.sh$ lunch mek_8q-userdebug$ make 2>&1 | tee build-log.txt

如果电脑配置不好,编译时间比较漫长 ,大概5小时。如果又任何错误 可以查看 build-log.txt 获得详细信息
编译完成后 生成img 文件如下:

编译 ota 升级版命令 ,生成升级包就是上图的标红的文件

make otapackage

编译uboot

You can use this command to generate u-boot.imx under the Android environment:
# U-Boot image for i.MX 8QuadMax/8QuadXPlus MEK board:
$ cd ${MY_ANDROID}
$ source build/envsetup.sh
$ lunch mek_8q-userdebug
$ make bootloader -j4

生成kernelimg

Kernel image is automatically built when building the Android root file system.
The following are the default Android build commands to build the kernel image:
$ cd ${MY_ANDROID}/vendor/nxp-opensource/kernel_imx
$ echo $ARCH && echo $CROSS_COMPILE
Make sure that you have those two environment variables set. If the two variables are not set, set them as follows:
$ export ARCH=arm64
$ export CROSS_COMPILE=${MY_ANDROID}/prebuilts/gcc/linux-x86/aarch64/aarch64-linuxandroid-
4.9/bin/aarch64-linux-android-
android_defconfig.
# to build the kernel zImage for i.MX 8QuadMax/8QuadXPlus
$ make android_defconfig
$ make KCFLAGS=-mno-android
# to build the zImage which is used in MfgTOOL
# zImage is under mfgtools\Profiles\Linux\OS Firmware\firmware\
$ make defconfig
$ make KCFLAGS=-mno-android -j4
The kernel images are found in ${MY_ANDROID}/out/target/product/mek_8q/obj/KERNEL_OBJ/arch/arm64/boot/Image.

最后生成bootimage

# Boot image for i.MX 8MQuad EVK board
$ source build/envsetup.sh
$ lunch mek_8q-userdebug
$ make bootimage

Building dtbo.img

Dtbo image holds the board's device tree binary.
Use the following commands to generate dtbo.img under the Android environment:
# dtbo image for the i.MX 8QuadMax/8QuadXPlus MEK board
$ cd ${MY_ANDROID}
$ source build/envsetup.sh
$ lunch mek_8q-userdebug
$ make dtboimage -j4

imx8开发之~源码编译相关推荐

  1. 古月居 机器人开发实践源码 编译报错问题解决方法

    ubuntu:16.04.7 ros:kinetic 移植<机器人开发实践>源码包 ros_exploring,出现的问题都包含于以下内容中. 书中提到,如果将源码包 ros_explor ...

  2. 瑞芯微RK3568开发板源码编译与交叉编译环境搭建

    本篇,将进行OK3568-C开发板Linux系统开发需要用的软件交叉编译环境的配置.下面就介绍两种交叉编译环境的配置方法. 01C/C++交叉编译环境编译 如果只是使用C/C++代码,则在自己的Ubu ...

  3. Cura二次开发之源码编译

    Cura源码编译 1.Cura内部连接关系 2.CuraEngine源码编译 2.1Protobuf源码编译 三级目录 3.Cura源码编译 4.Error解决方案 1.Cura内部连接关系 2.Cu ...

  4. 【Android 逆向】Android 进程注入工具开发 ( 总结 | 源码编译 | 逆向环境搭建使用 | 使用进程注入工具进行逆向操作 ) ★★★

    文章目录 一.Android 进程注入工具开发系列博客 二.Android 进程注入工具 源码下载编译 三.逆向环境搭建 四.使用注入工具进行逆向操作 1.获取远程进程号 2.注入工具准备 3.注入动 ...

  5. arm开发板源码编译mysql

    2019独角兽企业重金招聘Python工程师标准>>> mysql:5.5.58,arm 32位开发板:centos 7,4.4.52-armada-17.06.2 一.下载mysq ...

  6. rk3399pro-EVB开发板源码编译opencv4.5.1

    建议大家安装opencv4.0.1及以前的版本,因为opencv4.0.1以后的版本要求numpy>1.19.3,而rknn-tookit的whl包要求numpy==1.16.3,我是安装完op ...

  7. 机器人开发实践源码编译报错问题解决方法

    书中提到,如果将源码包 ros_exploring 直接放到 catkin 工作空间中,需要将 ros2 文件夹移出到工作空间之外,否则编译失败. 将 ros2 文件夹移出之后仍然报错,具体信息如下: ...

  8. 5单个编译总会编译全部_玩转Android10(五)源码编译开发中常用命令

    源码开发编译中,熟练掌握常用命令,可以提高开发工作效率.Android源码中,将相关的命令分为如下几类: 1.初始化源码编译环境 初始化编译环境,为后续提供如lunch.make.xxgrep.god ...

  9. 干货|TensorFlow开发环境搭建(Ubuntu16.04+GPU+TensorFlow源码编译)

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|机器学习算法工程师 安装平台 1 平台 目前Tensor ...

  10. 如何在ARM开发板上从源码编译安装OpenCV和OpenCV contrib

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文主要介绍如何在ARM开发板上从源码编译安装OpenCV和OpenCV contrib. OpenC ...

最新文章

  1. AutoX江苏超级工厂首曝光!机械臂随处可见,车辆出厂就能完全无人驾驶
  2. python3数据类型:Tuple(元组)
  3. window应用移植到Linux下(应用移植)
  4. SQL Server返回当前实例系统日期和时间的函数
  5. android cad 开源库,KiCad 开源元件库收集
  6. 关于文档的基本操作---ElasticSearch
  7. foundApp宣传展示页企业网站模板
  8. python-演练-输出一个等腰三角形-
  9. [转]查看linux服务器硬盘IO读写负载
  10. linux查看内存_【001】一文带你全面掌握Linux系统体系结构
  11. 分布式保存Session 和 StateServer 解决 Session过期
  12. BigDecimal的除法
  13. oracle的报告,Oracle数据库(RAC)巡检报告
  14. Unix/Linux编程:Xinu中的进程
  15. 盘点世界顶级五大黑客:个个都是神
  16. 海康大华RTSP转HLS直播
  17. 网页设计与制作(五)
  18. mysql子查询不支持limit问题解决
  19. 视达配色教程4 色相型和色量率是什么
  20. 深圳Java培训:Java和大数据的关系

热门文章

  1. 第一易,唯一难,为什么它是ofo、天学网的不二选择
  2. python文档自动翻译
  3. LCD1602液晶显示设计
  4. 局域网内网关欺骗获取网站密码
  5. 高级数学建模模型——对数正态分布
  6. Python3 字节码详解
  7. 为什么学习线性代数_工程应用简介
  8. 数学建模层次分析法例题及答案_数学建模层次分析法题目及程序
  9. 翻译:web制作、开发人员需知的Web缓存知识
  10. ios13 无法传参_Win版iOS13越狱最新消息汇总丨拼音字体更新