博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
I.MX6 Android 5.1.1 下载、编译
阅读量:6480 次
发布时间:2019-06-23

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

/************************************************************************* *                 I.MX6 Android 5.1.1 下载、编译 * 说明: *     这里要提到的就是4.2版本,编译中断了,你接着编好像是没事的,但是这个 * 5.1.1版本貌似就得从头再编,这个有点郁闷。 * *                                     2016-9-9 深圳 南山平山村 曾剑锋 ************************************************************************/一、购买VPN(为什么要买VPN?因为要去和Google打交道):    https://www.expressvpn.xyz二、下载参考文档:    http://www.nxp.com/zh-Hans/products/microcontrollers-and-processors/arm-processors/i.mx-applications-processors/i.mx-6-processors/i.mx6qp/i.mx-6duallite-processors-dual-core-3d-graphics-hd-video-arm-cortex-a9-core:i.MX6DL?fpsp=1&tab=Documentation_Tab三、下载补丁包:    http://www.nxp.com/zh-Hans/products/software-and-tools/hardware-development-tools/sabre-development-system/sabre-platform-for-smart-devices-based-on-the-i.mx-6-series:RDIMX6SABREPLAT?fpsp=1&tab=Design_Tools_Tab四、安装lib依赖:    sudo apt-get install 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 ccache libgl1-mesa-dev libxml2-utils xsltproc unzip uuid uuid-dev zlib1g-dev liblz-dev liblzo2-2 liblzo2-dev lzop git-core curl u-boot-tools mtd-utils android-tools-fsutils五、安装JDK:    sudo apt-get install openjdk-7-jdk六、下载Android源代码:    $ cd ~    $ mkdir myandroid    $ mkdir bin    $ cd myandroid    $ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo    $ chmod a+x ~/bin/repo    $ ~/bin/repo init -u https://android.googlesource.com/platform/manifest -b android-5.1.1_r1    $ ~/bin/repo sync # this command loads most needed repos. Therefore, it can take several hours to load.    $ cd ~/myandroid/prebuilts/gcc/linux-x86/arm    $ git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/armeabi-4.6    $ cd arm-eabi-4.6    $ git checkout android-4.4.3_r1七、下载kernel:    $ cd ~/myandroid    $ git clone git://git.freescale.com/imx/linux-2.6-imx.git kernel_imx # the kernel repo is large. Therefore, this process can take a while.    $ cd kernel_imx    $ git checkout l5.1.1_2.1.0-ga八、下载u-boot:    $ cd ~/myandroid/bootable    $ cd bootloader    $ git clone git://git.freescale.com/imx/uboot-imx.git uboot-imx    $ cd uboot-imx    $ git checkout l5.1.1_2.1.0-ga九、在home目录解压补丁包:    1. tar xvf IMX6_L5.1_2.1.0_AND_SOURCE_BSP.tar.gz    2. cd android_L5.1.1_2.1.0-ga_core_source/code/    3. tar xvf L5.1.1_2.1.0-ga.tar.gz    4. source ~/android_L5.1.1_2.1.0-ga_core_source/code/L5.1.1_2.1.0-ga/and_patch.sh十、开始打补丁,出现warning:    $ c_patch ~/android_L5.1.1_2.1.0-ga_core_source/code/L5.1.1_2.1.0-ga/ imx_L5.1.1_2.1.0-ga    ......    Applying patch to hardware/broadcom/libbt    /home/zengjf/myandroid/hardware/broadcom/libbt/.git/rebase-apply/patch:42: new blank line at EOF.    +    warning: 1 line adds whitespace errors.    /home/zengjf/myandroid/hardware/broadcom/libbt/.git/rebase-apply/patch:41: new blank line at EOF.    +    warning: 1 line adds whitespace errors.    /home/zengjf/myandroid/hardware/broadcom/libbt/.git/rebase-apply/patch:26: new blank line at EOF.    +    warning: 1 line adds whitespace errors.    Applying patch to hardware/broadcom/wlan    Applying patch to packages/wallpapers/MusicVisualization    Applying patch to external/aac    Applying patch to external/tremolo    Applying patch to external/libpng    Applying patch to external/sonivox    Applying patch to packages/apps/DeskClock    *************************************************************    Success: Now you can build android code for FSL i.MX platform    *************************************************************十一、编译:    1. export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/    2. cd ~/myandroid    3. source build/envsetup.sh    4. lunch sabresd_6dq-user    5. make 2>&1 | tee build-log.txt十二、编译完成最后输出信息:    ......    host C: libbz_32 <= external/bzip2/compress.c    host C: libbz_32 <= external/bzip2/decompress.c    host C: libbz_32 <= external/bzip2/bzlib.c    host StaticLib: libbz_32 (out/host/linux-x86/obj32/STATIC_LIBRARIES/libbz_intermediates/libbz.a)    Export includes file: bootable/recovery/applypatch/Android.mk -- out/host/linux-x86/obj32/EXECUTABLES/imgdiff_intermediates/export_includes    host Executable: imgdiff (out/host/linux-x86/obj32/EXECUTABLES/imgdiff_intermediates/imgdiff)    Notice file: bootable/recovery/applypatch/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//bin/imgdiff.txt    Notice file: external/bzip2/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//lib/libbz.a.txt    Install: out/host/linux-x86/bin/imgdiff    Import includes file: out/host/linux-x86/obj32/EXECUTABLES/bsdiff_intermediates/import_includes    host C: bsdiff <= external/bsdiff/bsdiff.c    external/bsdiff/bsdiff.c: In function 'main':    external/bsdiff/bsdiff.c:196:5: warning: 'pos' may be used uninitialized in this function [-Wmaybe-uninitialized]    Export includes file: external/bsdiff/Android.mk -- out/host/linux-x86/obj32/EXECUTABLES/bsdiff_intermediates/export_includes    host Executable: bsdiff (out/host/linux-x86/obj32/EXECUTABLES/bsdiff_intermediates/bsdiff)    Install: out/host/linux-x86/bin/bsdiff    Construct recovery from boot    mkdir -p out/target/product/sabresd_6dq/obj/PACKAGING/recovery_patch_intermediates/    PATH=out/host/linux-x86/bin:$PATH out/host/linux-x86/bin/imgdiff out/target/product/sabresd_6dq/boot.img out/target/product/sabresd_6dq/recovery.img out/target/product/sabresd_6dq/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p    chunk 0: type 0 start 0 len 7274506    chunk 1: type 2 start 7274506 len 1480704    chunk 2: type 0 start 8142159 len 49112    Construct patches for 3 chunks...    patch   0 is 205 bytes (of 7274506)    patch   1 is 435259 bytes (of 867653)    patch   2 is 594 bytes (of 49112)    chunk   0: normal   (         0,    7274506)         205    chunk   1: deflate  (   7274506,    1476108)      435259  (null)    chunk   2: normal   (   8750614,      48918)         594    Install system fs image: out/target/product/sabresd_6dq/system.img    out/target/product/sabresd_6dq/system.img+out/target/product/sabresd_6dq/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p maxsize=385389312 blocksize=4224 total=318349634 reserve=3894528        #### make completed successfully (07:51:40 (hh:mm:ss)) ####        zengjf@zengjf:~/myandroid$ 十三、磁盘空间占用情况:    zengjf@zengjf:~/myandroid$ df -h    Filesystem      Size  Used Avail Use% Mounted on    /dev/sda1        97G   87G  5.2G  95% /    none            4.0K     0  4.0K   0% /sys/fs/cgroup    udev            2.0G  4.0K  2.0G   1% /dev    tmpfs           395M  1.1M  394M   1% /run    none            5.0M     0  5.0M   0% /run/lock    none            2.0G  152K  2.0G   1% /run/shm    none            100M   52K  100M   1% /run/user    zengjf@zengjf:~/myandroid$ 十四、u-boot编译:    1. 环境变量:        1. export ARCH=arm        2. export CROSS_COMPILE=~/myandroid/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-    2. 编译:        1. make mx6dlsabresdandroid_config        2. make十五、kernel编译:    1. 环境变量:        1. export PATH=~/myandroid/bootable/bootloader/uboot-imx/tools:$PATH        2. export ARCH=arm        3. export CROSS_COMPILE=~/myandroid/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-    2. 编译:        1. make imx_v7_android_defconfig        2. make uImage LOADADDR=0x10008000十六、boot.img编译:    1. cd ~/myandroid    2. source build/envsetup.sh    3. lunch sabresd_6dq-user    4. make bootimage十七、.bashrc环境变量    ......    export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/    export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin    export ARCH=arm    export CROSS_COMPILE=~/myandroid/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-    export PATH=~/myandroid/bootable/bootloader/uboot-imx/tools:$PATH        export out=~/myandroid/out/target/product/sabresd_6dq    export uboot=~/myandroid/bootable/bootloader/uboot-imx    export kernel=~/myandroid/kernel_imx    export win=/mnt/hgfs/ftp_root    ......

 

转载于:https://www.cnblogs.com/zengjfgit/p/5855783.html

你可能感兴趣的文章
Spring Security(14)——权限鉴定基础
查看>>
IntelliJ IDEA快捷键
查看>>
【iOS-cocos2d-X 游戏开发之十三】cocos2dx通过Jni调用Android的Java层代码(下)
查看>>
MongoDB的基础使用
查看>>
进程间通信——命名管道
查看>>
ssh登陆不需要密码
查看>>
java mkdir()和mkdirs()区别
查看>>
虚拟化--003 vcac licence -成功案例
查看>>
windows server 2003各版本及2008各版本的最大识别内存大小
查看>>
OSChina 周六乱弹 ——揭秘后羿怎么死的
查看>>
IT人员的职业生涯规划
查看>>
sorry,you must have a tty to run sudo
查看>>
ios开发中使用正则表达式识别处理字符串中的URL
查看>>
项目中的积累,及常见小问题
查看>>
Python类型转换、数值操作(收藏)
查看>>
oracle11g dataguard 安装手册(转)
查看>>
1. Two Sum - Easy - Leetcode解题报告
查看>>
多线程---同步函数的锁是this(转载)
查看>>
鱼C记事本V1.0(下)- 零基础入门学习Delphi28
查看>>
百练 2742 统计字符数 解题报告
查看>>