• Android6.0内核移植(1):分析编译日志


    在下面命令之后产生的编译日志进行分析

    source build/envsetup.sh
    lunch sabresd_6dq-user
    make -j20
    ============================================
    PLATFORM_VERSION_CODENAME=REL    //平台
    PLATFORM_VERSION=6.0.1
    TARGET_PRODUCT=sabresd_6dq       //目标信息,也就是开发板上的
    TARGET_BUILD_VARIANT=user
    TARGET_BUILD_TYPE=release
    TARGET_BUILD_APPS=
    TARGET_ARCH=arm
    TARGET_ARCH_VARIANT=armv7-a-neon
    TARGET_CPU_VARIANT=cortex-a9
    TARGET_2ND_ARCH=
    TARGET_2ND_ARCH_VARIANT=
    TARGET_2ND_CPU_VARIANT=
    HOST_ARCH=x86_64        //主机信息,也就是当前编译系统的电脑
    HOST_OS=linux
    HOST_OS_EXTRA=Linux-3.16.0-30-generic-x86_64-with-Ubuntu-14.04-trusty
    HOST_BUILD_TYPE=release
    BUILD_ID=2.1.0-ga-rc2
    OUT_DIR=out
    ============================================
    including ./abi/cpp/Android.mk ...
    including ./art/Android.mk ...
    including ./bionic/Android.mk ...
    including ./bootable/recovery/Android.mk ...
    including ./build/libs/host/Android.mk ...
    including ./build/target/board/Android.mk ...
    including ./build/target/product/security/Android.mk ...
    including ./build/tools/Android.mk ...
    。。。
    including ./tools/external/fat32lib/Android.mk ...
    No private recovery resources for TARGET_DEVICE sabresd_6dq
    //编译内核的信息,这里可以看出ARCH,CROSS_COMPILE,最后生成的为uImage make
    -C kernel_imx -j20 uImage ARCH=arm CROSS_COMPILE=`pwd`/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi- LOADADDR=0x10008000 KCFLAGS=-mno-android for ubootplat in imx6q:mx6qsabresdandroid_config imx6dl:mx6dlsabresdandroid_config imx6q-ldo:mx6qsabresdandroid_config imx6qp:mx6qpsabresdandroid_config; do UBOOT_PLATFORM=`echo $ubootplat | cut -d':' -f1`; UBOOT_CONFIG=`echo $ubootplat | cut -d':' -f2`; echo ; echo ;
         //清除uboot make
    -C bootable/bootloader/uboot-imx/ distclean ARCH=arm CROSS_COMPILE=`pwd`/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi-; //配置uboot,就类似于kernel的make menuconfig
         make
    -C bootable/bootloader/uboot-imx/ $UBOOT_CONFIG ARCH=arm CROSS_COMPILE=`pwd`/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi-; //编译uboot
         make
    -C bootable/bootloader/uboot-imx/ ARCH=arm CROSS_COMPILE=`pwd`/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi-; install -D bootable/bootloader/uboot-imx/u-boot.imx out/target/product/sabresd_6dq/u-boot-$UBOOT_PLATFORM.imx; install -D bootable/bootloader/uboot-imx/u-boot.imx out/target/product/sabresd_6dq/u-boot.imx; done make[1]: Entering directory `/home/hejin/myandroid/bootable/bootloader/uboot-imx' Copy: out/target/product/sabresd_6dq/root/fstab.freescale CLEAN examples/standalone CLEAN tools CLEAN tools/lib tools/common CLEAN scripts/basic CLEAN scripts/kconfig CLEAN u-boot u-boot.bin u-boot.imx u-boot.lds u-boot.map u-boot.srec System.map 。。。 HOSTCC tools/mkimage.o HOSTCC tools/proftool HOSTCC tools/lib/crc32.o HOSTCC tools/common/bootm.o Image Name: Linux-4.1.15-g419e1f7-dirty Created: Tue Feb 13 11:05:45 2018 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 8715592 Bytes = 8511.32 kB = 8.31 MB Load Address: 10008000 Entry Point: 10008000 Image arch/arm/boot/uImage is ready make[1]: Leaving directory `/home/hejin/myandroid/kernel_imx' HOSTCC tools/lib/fdtdec_common.o
    //编译设备树,跟上面类似 make
    -C kernel_imx dtbs ARCH=arm CROSS_COMPILE=`pwd`/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi- LOADADDR=0x10008000 KCFLAGS=-mno-android HOSTCC tools/lib/fdtdec.o HOSTCC tools/common/image-fit.o HOSTCC tools/common/image.o HOSTCC tools/lib/md5.o HOSTCC tools/lib/sha1.o
  • 相关阅读:
    微信小程序排坑
    webpack——3.x版本总结
    干货网站
    转码器babel
    es6——之初体验
    移动端适配不同屏幕分辨率——rem布局
    vuejs学习总计——数据传值篇
    vue.js学习总计---路由篇
    vuejs学习总结---基础篇
    vuejs搭建的项目对于ie浏览器的处理
  • 原文地址:https://www.cnblogs.com/maogefff/p/8446290.html
Copyright © 2020-2023  润新知