01按照官方步骤编译NanoPiM1Plus的Android
01按照官方步骤编译NanoPiM1Plus的Android
大文实验室/大文哥
壹捌陆捌零陆捌捌陆捌贰
21504965 AT qq.com
完成时间:2017/12/6 10:58
版本:V1.0
开发板:NanoPi M1 Plus/zh
SDK:Android4.4.2
1、最近考虑玩一下H3,开发板使用了nanoPi Plus。
http://wiki.friendlyarm.com/wiki/index.php/NanoPi_M1_Plus/zh#.E5.87.86.E5.A4.87.E5.B7.A5.E4.BD.9C_3
NanoPi M1 Plus/zh
https://pan.baidu.com/s/1boNTLKF
官方SDK的下载网盘地址。
SDK不是常用的*.tar.gz或者*.tar.bz2。而是少见的*.7z格式。不过7Z的压缩比确实比较高(优于*.tar.gz)!
由于服务器的编译环境是可以编译全志A31S平台的,因此几乎不需要做更改了!
官方的编译步骤:
如何编译Android系统的BSP
准备工作
访问此处下载地址的sources/nanopi-h3-bsp目录,下载所有压缩文件,使用7-Zip工具解压后得到lichee目录和android目录,请务必保证这2个目录位于同一个目录中,如下:
$ ls ./
android lichee
也可以从github上克隆lichee源码:
$ git clone https://github.com/friendlyarm/h3_lichee.git lichee
注:lichee是全志为其CPU的板级支持包所起的项目名称,里面包含了U-boot,Linux等源码和众多的编译脚本。
编译全志 H3 的BSP源码包必须使用 64bit 的Linux系统,并安装下列软件包,下列操作均基于Ubuntu-14.04 LTS-64bit:
$ sudo apt-get install gawk git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
安装交叉编译器
访问此处下载地址的toolchain目录,下载交叉编译器压缩包gcc-linaro-arm.tar.xz,然后将该压缩包放置在lichee/brandy/toochain/目录下即可,无需解压。
编译Android
搭建编译环境
搭建编译Android的环境建议使用64位的Ubuntu-14.04 LTS-64bit,安装需要的包即可。
$ sudo apt-get install bison g++-multilib git gperf libxml2-utils make python-networkx zip flex libncurses5-dev zlib1g-dev gawk minicom
更多说明可查看:android_initializing。
安装JDK
使用JDK1.6.0_45版本,下载和安装说明请查看Oracle官方网址:Oracle JDK ,这里假设JDK已经成功安装到路径/usr/lib/jvm/下。
编译系统
$ cd lichee/fa_tools/
$ ./build.sh -b nanopi-m1-plus -p android -t all
$ cd ../../android
$ export PATH=/usr/lib/jvm/jdk1.6.0_45/bin:$PATH
$ ./build.sh -b nanopi-m1-plus
上述命令会编译lichee目录和android目录,编译完成后会在lichee/tools/pack/目录下生成Android系统固件sun8iw7p1_android_nanopi-m1-plus_uart0.img。
清理lichee源码
$ cd lichee/fa_tools/
$ ./build.sh -b nanopi-m1-plus -p android -t clean
固件下载地址
NanoPi M1 Plus 固件下载:[1]
7za x解压缩SDK:
访问此处下载地址的toolchain目录,下载交叉编译器压缩包gcc-linaro-arm.tar.xz,然后将该压缩包放置在lichee/brandy/toochain/目录下即可,无需解压。
2、按照官方的办法编译系统:
cd lichee/fa_tools/
./build.sh -b nanopi-m1-plus -p android -t all
cd ../../android
./build.sh -b nanopi-m1-plus
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp$ ll
总用量 4754836
drwxrwxr-x 26 rootroot rootroot 4096 6月 8 18:34 android
-rwxrw-r-- 1 rootroot rootroot 4425329745 12月 5 12:03 android_nanopi_m1plus_20171205_1156.tar.gz
drwxrwxr-x 8 rootroot rootroot 4096 6月 8 18:50 lichee
-rwxrw-r-- 1 rootroot rootroot 443604636 12月 5 11:55 lichee_nanopi_m1plus_20171205_1155.tar.gz
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp$ cd lichee/fa_tools/
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$ll
总用量 20
-rwxr-xr-x 1 rootroot rootroot 5897 6月 9 11:30 build.sh
-rwxr-xr-x 1 rootroot rootroot 1602 6月 8 18:40 format_sd.sh
-rwxr-xr-x 1 rootroot rootroot 5544 6月 8 18:40 fuse.sh
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$./build.sh -b nanopi-m1-plus -p android -t all
INFO: preparing sys_config.fex
_config.fex"
All available lichee lunch:
0. sun8iw6p1-android-eagle
1. sun8iw6p1-android-secure
2. sun8iw7p1-android-dolphin
3. sun8iw7p1-android-secure
4. sun8iw7p1-android-karaok
5. sun8iw8p1-android
6. sun9iw1p1-android-jaws
7. sun9iw1p1-android-secure
8. sun9iw1p1-android-optimus
using kernel ‘linux-3.4‘:
LICHEE_CHIP=sun8iw7p1
LICHEE_PLATFORM=android
LICHEE_BUSINESS=dolphin
LICHEE_BOARD=
LICHEE_KERN_VER=linux-3.4
/home/wwt/nanopim1plus_h3_bsp/lichee
"board/sys_config_nanopi-m1-plus.fex" -> "sys_config.fex"
/home/wwt/nanopim1plus_h3_bsp/lichee
INFO: ----------------------------------------
INFO: build lichee ...
INFO: chip: sun8iw7p1
INFO: platform: android
INFO: business: dolphin
INFO: kernel: linux-3.4
INFO: board:
INFO: output: out/sun8iw7p1/android/
INFO: ----------------------------------------
INFO: build kernel ...
INFO: prepare toolchain ...
Prepare toolchain ...
Building kernel
/home/wwt/nanopim1plus_h3_bsp/lichee/linux-3.4/output/lib/modules/3.4.39-h3
Using default config sun8iw7p1smp_android_defconfig ...
HOSTCC scripts/basic/fixdep
HOSTCC scripts/kconfig/conf.o
SHIPPED scripts/kconfig/zconf.tab.c
SHIPPED scripts/kconfig/zconf.lex.c
SHIPPED scripts/kconfig/zconf.hash.c
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
scripts/kconfig/conf --silentoldconfig Kconfig
WRAP arch/arm/include/generated/asm/auxvec.h
WRAP arch/arm/include/generated/asm/bitsperlong.h
CHK include/linux/version.h
WRAP arch/arm/include/generated/asm/cputime.h
WRAP arch/arm/include/generated/asm/errno.h
WRAP arch/arm/include/generated/asm/emergency-restart.h
UPD include/linux/version.h
WRAP arch/arm/include/generated/asm/ioctl.h
WRAP arch/arm/include/generated/asm/irq_regs.h
WRAP arch/arm/include/generated/asm/kdebug.h
WRAP arch/arm/include/generated/asm/local.h
WRAP arch/arm/include/generated/asm/local64.h
WRAP arch/arm/include/generated/asm/poll.h
WRAP arch/arm/include/generated/asm/percpu.h
WRAP arch/arm/include/generated/asm/resource.h
WRAP arch/arm/include/generated/asm/sections.h
WRAP arch/arm/include/generated/asm/siginfo.h
WRAP arch/arm/include/generated/asm/sizes.h
make[2]: 正在进入目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/main‘
CC sbromsw_head.c ...
CC brom.S ...
CC sbrom_main.c ...
CC sbromsw_toc1.c ...
CC sbromsw_hash.c ...
make[2]:正在离开目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/main‘
make -C /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/spl/
make[2]: 正在进入目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/spl‘
make[2]:正在离开目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/spl‘
make[2]: 正在进入目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/spl‘
CC /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/arch/arm/cpu/armv7/sun8iw7/spl/ss_spl.c ...
CC /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/arch/arm/cpu/armv7/sun8iw7/spl/smta_spl.c ...
CC /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/arch/arm/cpu/armv7/sun8iw7/spl/smc_spl.c ...
CC /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/arch/arm/cpu/armv7/sun8iw7/spl/gic_spl.c ...
CC /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/arch/arm/cpu/armv7/sun8iw7/spl/debug.c ...
CC /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/arch/arm/cpu/armv7/sun8iw7/spl/ctype.c ...
CC /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/arch/arm/cpu/armv7/sun8iw7/spl/eabi_compat.c ...
make[2]:正在离开目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/spl‘
make -C /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/spl/lib/
make[2]: 正在进入目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/spl/lib‘
make[2]: 没有什么可以做的为 `all‘。
make[2]:正在离开目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/spl/lib‘
sunxi_spl/sbrom/main/sboot.lds >/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/sboot.lds
-T/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/sboot.lds -o sboot.axf -Map sboot.map
m/sboot.axf /home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom/sboot.bin
make[1]:正在离开目录 `/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/sunxi_spl/sbrom‘
fatal: Not a git repository (or any parent up to mount point /home/wwt)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
build_sboot
"sboot_sun8iw7p1.bin" -> "/home/wwt/nanopim1plus_h3_bsp/lichee/brandy/u-boot-2011.09/../../tools/pack/chips/sun8iw7p1/bin/sboot_sun8iw7p1.bin"
INFO: build uboot ok.
INFO: ----------------------------------------
INFO: build sun8iw7p1 android dolphin lichee OK
INFO: ----------------------------------------
INFO: build lichee for ANDROID platform success. Please build and pack in Android directory
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/lichee/fa_tools$cd ../../android
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$ ll
总用量 108
drwxrwxr-x 3 rootroot rootroot 4096 6月 23 2015 abi
drwxrwxr-x 11 rootroot rootroot 4096 3月 25 2016 art
drwxrwxr-x 9 rootroot rootroot 4096 3月 25 2016 bionic
drwxrwxr-x 5 rootroot rootroot 4096 6月 23 2015 bootable
drwxrwxr-x 6 rootroot rootroot 4096 3月 25 2016 build
-rwxr-xr-x 1 rootroot rootroot 1587 6月 8 18:34 build.sh
drwxrwxr-x 10 rootroot rootroot 4096 3月 25 2016 cts
drwxrwxr-x 15 rootroot rootroot 4096 3月 25 2016 dalvik
drwxrwxr-x 6 rootroot rootroot 4096 6月 23 2015 developers
drwxrwxr-x 17 rootroot rootroot 4096 3月 25 2016 development
drwxrwxr-x 10 rootroot rootroot 4096 6月 23 2015 device
drwxrwxr-x 3 rootroot rootroot 4096 6月 23 2015 docs
drwxrwxr-x 172 rootroot rootroot 4096 6月 23 2015 external
drwxrwxr-x 17 rootroot rootroot 4096 6月 23 2015 frameworks
drwxrwxr-x 12 rootroot rootroot 4096 6月 23 2015 hardware
drwxrwxr-x 16 rootroot rootroot 4096 3月 25 2016 libcore
drwxrwxr-x 3 rootroot rootroot 4096 3月 25 2016 libnativehelper
-r--r--r-- 1 rootroot rootroot 87 6月 23 2015 Makefile
drwxrwxr-x 7 rootroot rootroot 4096 3月 25 2016 ndk
drwxrwxr-x 9 rootroot rootroot 4096 6月 23 2015 packages
drwxrwxr-x 5 rootroot rootroot 4096 3月 25 2016 pdk
drwxrwxr-x 13 rootroot rootroot 4096 6月 23 2015 prebuilts
drwxrwxr-x 25 rootroot rootroot 4096 3月 25 2016 sdk
-rwxr-xr-x 1 rootroot rootroot 119 8月 1 2016 setenv
drwxrwxr-x 8 rootroot rootroot 4096 6月 23 2015 system
drwxrwxr-x 3 rootroot rootroot 4096 6月 23 2015 tools
drwxrwxr-x 4 rootroot rootroot 4096 6月 23 2015 vendor
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$ ./build.sh -b nanopi-m1-plus
INFO: preparing boardconfig.mk
"device/softwinner/nanopi-h3/BoardConfig/BoardConfig_nanopi-m1-plus.mk" -> "device/softwinner/nanopi-h3/BoardConfig/../BoardConfig.mk"
including device/softwinner/nanopi-h3/vendorsetup.sh
including device/softwinner/eagle-fvd-p1/vendorsetup.sh
including device/softwinner/eagle-fvd-p1-secure/vendorsetup.sh
including device/softwinner/common/vendorsetup.sh
including device/softwinner/dolphin-fvd-p1/vendorsetup.sh
including device/lge/mako/vendorsetup.sh
including device/lge/hammerhead/vendorsetup.sh
including device/samsung/manta/vendorsetup.sh
including device/generic/x86/vendorsetup.sh
including device/generic/mips/vendorsetup.sh
including device/generic/armv7-a-neon/vendorsetup.sh
including device/asus/tilapia/vendorsetup.sh
including device/asus/deb/vendorsetup.sh
including device/asus/grouper/vendorsetup.sh
including device/asus/flo/vendorsetup.sh
including sdk/bash_completion/adb.bash
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.2
TARGET_PRODUCT=nanopi_h3
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a7
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
HOST_BUILD_TYPE=release
BUILD_ID=KOT49H
OUT_DIR=out
============================================
/home/wwt/nanopim1plus_h3_bsp/android/device/*/nanopi-h3/bImage copied!
/home/wwt/nanopim1plus_h3_bsp/android/device/*/nanopi-h3/modules copied!
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.2
TARGET_PRODUCT=nanopi_h3
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a7
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
HOST_BUILD_TYPE=release
BUILD_ID=KOT49H
OUT_DIR=out
============================================
Checking build tools versions...
including ./abi/cpp/Android.mk ...
including ./art/Android.mk ...
including ./bionic/Android.mk ...
including ./bootable/diskinstaller/Android.mk ...
including ./bootable/recovery/Android.mk ...
including ./build/libs/host/Android.mk ...
including ./build/target/board/Android.mk ...
including ./build/tools/Android.mk ...
including ./cts/Android.mk ...
out/target/product/nanopi-h3/obj/APPS/SignatureTest_intermediates
including ./dalvik/Android.mk ...
including ./development/apps/BluetoothDebug/Android.mk ...
including ./development/apps/BuildWidget/Android.mk ...
including ./development/apps/CustomLocale/Android.mk ...
including ./development/apps/Development/Android.mk ...
including ./development/apps/DevelopmentSettings/Android.mk ...
including ./development/apps/Fallback/Android.mk ...
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘uk_UA‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘vi_VN‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘tl_PH‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘ar_EG‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘fa_IR‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘th_TH‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘sw_TZ‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘ms_MY‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘af_ZA‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘zu_ZA‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘am_ET‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘hi_IN‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘en_XA‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘ar_XB‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘fr_CA‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘mn_MN‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘az_AZ‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘normal‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘hdpi‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘xhdpi‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘xxhdpi‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
aapt: warning: **** string ‘widget_unread‘ has no default or required localization for ‘nodpi‘ in packages/apps/Email/../../../frameworks/support/v7/gridlayout/res
Warning: AndroidManifest.xml already defines versionCode (in http://schemas.android.com/apk/res/android); using existing value in manifest.
Warning: AndroidManifest.xml already defines minSdkVersion (in http://schemas.android.com/apk/res/android); using existing value in manifest.
Warning: AndroidManifest.xml already defines targetSdkVersion (in http://schemas.android.com/apk/res/android); using existing value in manifest.
Install: out/target/product/nanopi-h3/system/app/Email.apk
get/product/nanopi-h3/obj/NOTICE_FILES/src
Combining NOTICE files into HTML
Combining NOTICE files into text
Installed file list: out/target/product/nanopi-h3/installed-files.txt
Target system fs image: out/target/product/nanopi-h3/obj/PACKAGING/systemimage_intermediates/system.img
ts
/android/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin:/opt/jdk1.6.0_45/bin:/opt/jdk1.6.0_45/jre/bin‘
/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin:/opt/jdk1.6.0_45/bin:/opt/jdk1.6.0_45/jre/bin
+ ENABLE_SPARSE_IMAGE=
+ ‘[‘ -s = -s ‘]‘
+ ENABLE_SPARSE_IMAGE=-s
+ shift
+ ‘[‘ 6 -ne 5 -a 6 -ne 6 ‘]‘
+ SRC_DIR=out/target/product/nanopi-h3/system
+ ‘[‘ ‘!‘ -d out/target/product/nanopi-h3/system ‘]‘
+ OUTPUT_FILE=out/target/product/nanopi-h3/obj/PACKAGING/systemimage_intermediates/system.img
+ EXT_VARIANT=ext4
+ MOUNT_POINT=system
+ SIZE=805306368
+ FC=out/target/product/nanopi-h3/root/file_contexts
+ case $EXT_VARIANT in
+ ‘[‘ -z system ‘]‘
+ ‘[‘ -z 805306368 ‘]‘
+ ‘[‘ -n out/target/product/nanopi-h3/root/file_contexts ‘]‘
+ FCOPT=‘-S out/target/product/nanopi-h3/root/file_contexts‘
nopi-h3/system‘
em
make_ext4fs -s -S out/target/product/nanopi-h3/root/file_contexts -l 805306368 -a system out/target/product/nanopi-h3/obj/PACKAGING/systemimage_intermediates/system.img out/target/product/nanopi-h3/system
+ make_ext4fs -s -S out/target/product/nanopi-h3/root/file_contexts -l 805306368 -a system out/target/product/nanopi-h3/obj/PACKAGING/systemimage_intermediates/system.img out/target/product/nanopi-h3/system
Creating filesystem with parameters:
Size: 805306368
Block size: 4096
Blocks per group: 32768
Inodes per group: 8192
Inode size: 256
Journal blocks: 3072
Label:
Blocks: 196608
Block groups: 6
Reserved block group size: 47
Created filesystem with 1407/49152 inodes and 84297/196608 blocks
+ ‘[‘ 0 -ne 0 ‘]‘
Install system fs image: out/target/product/nanopi-h3/system.img
out/target/product/nanopi-h3/system.img+out/target/product/nanopi-h3/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p maxsize=822163584 blocksize=4224 total=335107178 reserve=8308608
============================================
chip = sun8iw7p1
platform = android
board = nanopi-h3
debug = uart0
mode = normal
function = none
sigmode = none
============================================
copying tools file
copying configs file
copying boot resource
copying boot file
"sys_config.bin" -> "script.bin"
packing for android
normal
/home/wwt/nanopim1plus_h3_bsp/lichee/tools/pack/pctools/linux/eDragonEx/
/home/wwt/nanopim1plus_h3_bsp/lichee/tools/pack/out
Begin Parse sys_partion.fex
Add partion bootloader.fex BOOTLOADER_FEX00
Add partion very bootloader.fex BOOTLOADER_FEX00
FilePath: bootloader.fex
FileLength=5b4400Add partion env.fex ENV_FEX000000000
Add partion very env.fex ENV_FEX000000000
FilePath: env.fex
FileLength=20000Add partion boot.fex BOOT_FEX00000000
Add partion very boot.fex BOOT_FEX00000000
FilePath: boot.fex
FileLength=b81800Add partion system.fex SYSTEM_FEX000000
Add partion very system.fex SYSTEM_FEX000000
FilePath: system.fex
FileLength=13ebff88Add partion recovery.fex RECOVERY_FEX0000
Add partion very recovery.fex RECOVERY_FEX0000
FilePath: recovery.fex
FileLength=c64800Add partion sysrecovery.fex SYSRECOVERY_FEX0
Add partion diskfs.fex DISKFS_FEX000000
sys_config.fex Len: 0x5584
config.fex Len: 0x8998
split_xxxx.fex Len: 0x200
sys_partition.fex Len: 0x117a
boot0_nand.fex Len: 0x8000
boot0_sdcard.fex Len: 0x8000
u-boot.fex Len: 0xe4000
fes1.fex Len: 0x31e0
toc1.fex Len: 0x8
toc0.fex Len: 0x8
usbtool.fex Len: 0x23000
aultools.fex Len: 0x26ead
aultls32.fex Len: 0x238dd
cardtool.fex Len: 0x14000
cardscript.fex Len: 0x6ea
sunxi_mbr.fex Len: 0x10000
dlinfo.fex Len: 0x4000
arisc.fex Len: 0x217aa
bootloader.fex Len: 0x5b4400
Vbootloader.fex Len: 0x4
env.fex Len: 0x20000
Venv.fex Len: 0x4
boot.fex Len: 0xb81800
Vboot.fex Len: 0x4
system.fex Len: 0x13ebff88
Vsystem.fex Len: 0x4
recovery.fex Len: 0xc64800
Vrecovery.fex Len: 0x4
sysrecovery.fex Len: 0xb
diskfs.fex Len: 0x200
BuildImg 0
Dragon execute image.cfg SUCCESS !
----------image is at----------
/home/wwt/nanopim1plus_h3_bsp/lichee/tools/pack/sun8iw7p1_android_nanopi-m1-plus_uart0.img
pack finish
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$
rootroot@cm-System-Product-Name:/home/wwt/nanopim1plus_h3_bsp/android$
3、刷机:
root@nanopi-h3:/ #
root@nanopi-h3:/ # reboot efex
[ 6795.694407] SysRq : Emergency Remount R/O
[ 6795.698957] The process is "init" (pid 1)
[ 6795.932620] Restarting system.
[ 6795.936023] Restarting Linux version 3.4.39 (rootroot@cm-System-Product-Name) (gcc version 4.6.3 20120201 (prerelease) (crosstool-NG linaro-1.13.1-2012.02-20120222 - Linaro GCC 2012.02) ) #1 SMP PREEMPT Mon Dec 4 16:02:02 CST 2017
[ 6795.936038]
HELLO! BOOT0 is starting!
boot0 version : 4.0.0
boot0 commit : 1234567891234567891234567891234567891234
fel_flag = 0x00000000
rtc[0] value = 0x00000000
rtc[1] value = 0x00000000
rtc[2] value = 0x00000000
rtc[3] value = 0x0000000f
rtc[4] value = 0x00000000
rtc[5] value = 0x00000000
rtc[6] value = 0x00000000
rtc[7] value = 0x00000000
DRAM DRIVE INFO: V1.3
the chip id is 0x00000081
the chip id is 0x00000081
the chip id is 0x00000081
the chip id is 0x00000081
the chip id is 0x00000081
READ DQS LCDL = 00232222
DRAM Type = 3 (2:DDR2,3:DDR3,6:LPDDR2,7:LPDDR3)
DRAM CLK = 576 MHz
DRAM zq value: 003b3bfb
DRAM dram para1: 10f40400
DRAM dram para2: 00000000
DRAM workmode1: 000009f4
DRAM SIZE =1024 M
odt delay
dram size =1024
card boot number = 2
card no is 2
sdcard 2 line count 8
[mmc]: mmc driver ver 2015-04-13 16:07:39
[mmc]: ***Try SD card 2***
[mmc]: mmc 2 cmd 8 err 00000100
[mmc]: mmc 2 cmd 8 err 00000100
[mmc]: mmc 2 send if cond failed
[mmc]: mmc 2 cmd 55 err 00000100
[mmc]: mmc 2 cmd 55 err 00000100
[mmc]: mmc 2 send app cmd failed
[mmc]: ***Try MMC card 2***
[mmc]: mmc re-update_phase
[mmc]: mmc re-update_phase
[mmc]: 8bit ddr!!!
[mmc]: mmc re-update_phase
[mmc]: MMC ver 5.0
[mmc]: SD/MMC Card: 8bit, capacity: 7456MB
[mmc]: vendor: Man 00150100 Snr 0053d9f0
[mmc]: product: 8WPD3
[mmc]: revision: 5.2
[mmc]: ***SD/MMC 2 init OK!!!***
sdcard 2 init ok
The size of uboot is 000e4000.
sum=dd649649
src_sum=dd649649
set_mmc_para,sdly 50M 0
set_mmc_para,sdly 25M 0
Succeed in loading uboot from sdmmc flash.
Ready to disable icache.
Jump to secend Boot.
SUNXI_NORMAL_MODE
[ 0.281]e mode
U-Boot 2011.09-rc1 (Dec 04 2017 - 16:02:34) Allwinner Technology
[ 0.288]version: 1.1.0
[ 0.290]uboot commit : 1234567891234567891234567891234567891234
normal mode
[ 0.302]pmbus: ready
not set main pmu id
axp_probe error
gpio value=0x20000
[ 0.339]PMU: pll1 1008 Mhz,PLL6=600 Mhz
AXI=336 Mhz,AHB=200 Mhz, APB1=100 Mhz
sid read already
fel key new mode
run key detect
no key found
no key input
dram_para_set start
dram_para_set end
normal mode
[ 0.370]DRAM: 1 GiB
relocation Offset is: 35af2000
[recovery] no use
[box standby] read rtc = 0xf
[box_start_os] mag be start_type no use
user_gpio config
user_gpio ok
gic: normal or no secure os mode
workmode = 0
MMC: 2
[ 0.428][mmc]: mmc driver ver 2015-04-13 14:50:00
[ 0.433][mmc]: get sdc_phy_wipe fail.
[ 0.436][mmc]: get sdc0 sdc_erase fail.
[ 0.440][mmc]: get sdc_2xmode ok, val = 1
[ 0.445][mmc]: get sdc_ddrmode ok, val = 1
[ 0.449][mmc]: get sdc_f_max fail,use default 50000000Hz
[ 0.454][mmc]: get card_line ok, card_line = 8
[ 0.459][mmc]: get sdc_ex_dly_used fail,use default
[ 0.464][mmc]: SUNXI SD/MMC: 2
[ 0.477][mmc]: *Try SD card 2*
[ 0.480][mmc]: mmc 2 cmd 8 err 100
[ 0.486][mmc]: mmc send if cond failed
[ 0.490][mmc]: mmc 2 cmd 55 err 100
[ 0.495][mmc]: send app cmd failed
[ 0.498][mmc]: *Try MMC card 2*
[ 0.538][mmc]: mmc re-update_phase
[ 0.543][mmc]: mmc re-update_phase
[ 0.548][mmc]: mmc re-update_phase
[ 0.553][mmc]: ddr8
[ 0.555][mmc]: mmc re-update_phase
[ 0.572][mmc]: CID 0x15010038 0x57504433 0x520053d9 0xf09ba39d
[ 0.577][mmc]: MMC ver 5.0
[ 0.580][mmc]: mmc clk 50000000
[ 0.583][mmc]: SD/MMC Card: 8bit, capacity: 7456MB
[ 0.588][mmc]: boot0 capacity: 4000KB,boot1 capacity: 4000KB
[ 0.594][mmc]: ***SD/MMC 2 init OK!!!***
[ 0.599][mmc]: erase_grp_size:0x400WrBlk * 0x200 = 0x80000 Byte
[ 0.604][mmc]: secure_feature 0x55
[ 0.608][mmc]: secure_removal_type 0x9
[ 0.612]sunxi flash init ok
script config pll_de to 864 Mhz
Not Found clk pll_video1 in script
script config pll_video to 297 Mhz
script config pll_periph0 to 600 Mhz
unable to find regulator vcc-hdmi-18 from [pmu1_regu] or [pmu2_regu]
enable power vcc-hdmi-18, ret=-1
DRV_DISP_Init end
error: open tv_vdid.fex, maybe it is not exist
error: open disp_rsl.fex, maybe it is not exist
error: open disp_rsl.fex, maybe it is not exist
boot_disp.auto_hpd=1
auto hpd check has 0 times!
attched ok, mgr0<-->device0, type=4, mode=4----
ready to set mode
[ 1.491]finally, output_type=0x4, output_mode=0x4, screen_id=0x0, disp_para=0x404
In: serial
Out: serial
Err: serial
--------fastboot partitions--------
-total partitions:14-
-name- -start- -size-
bootloader : 1000000 1000000
env : 2000000 1000000
boot : 3000000 1000000
system : 4000000 30000000
misc : 34000000 1000000
recovery : 35000000 2000000
sysrecovery : 37000000 30000000
private : 67000000 1000000
Reserve0 : 68000000 1000000
klog : 69000000 1000000
Reserve1 : 6a000000 2000000
Reserve2 : 6c000000 1000000
cache : 6d000000 28000000
UDISK : 95000000 0
-----------------------------------
base bootcmd=run setargs_nand boot_normal
bootcmd set setargs_mmc
key 0
cant find rcvy value
cant find fstbt value
misc partition found
find efex cmd
set next system status
drv_disp_exit
sunxi_board_close_source
[ 1.589][mmc]: mmc exit start
[ 1.605][mmc]: mmc 2 cmd 8 err 100
[ 1.610][mmc]: mmc send if cond failed
[ 1.614][mmc]: mmc 2 cmd 55 err 100
[ 1.619][mmc]: send app cmd failed
[ 1.631][mmc]: get sdc_phy_wipe fail.
[ 1.635][mmc]: get sdc0 sdc_erase fail.
[ 1.638][mmc]: get sdc_2xmode ok, val = 1
[ 1.643][mmc]: get sdc_ddrmode ok, val = 1
[ 1.647][mmc]: get sdc_f_max fail,use default 50000000Hz
[ 1.652][mmc]: get card_line ok, card_line = 8
[ 1.657][mmc]: get sdc_ex_dly_used fail,use default
[ 1.662][mmc]: mmc 2 exit ok
reset cpu
HELLO! BOOT0 is starting!
boot0 version : 4.0.0
boot0 commit : 1234567891234567891234567891234567891234
fel_flag = 0x5aa5a55a
rtc[0] value = 0x00000000
rtc[1] value = 0x00000000
rtc[2] value = 0x5aa5a55a
rtc[3] value = 0x0000000f
rtc[4] value = 0x00000000
rtc[5] value = 0x00000000
rtc[6] value = 0x00000000
rtc[7] value = 0x00000000
eraly jump fel
54重启使用reboot efex刷机QQ图片20171205172308.jpg
55执行reboot efex选中IMG之后格式化刷机QQ图片20171205171011.jpg
00初始截图360手机助手截图1205_17_13_01.jpg
01初始截图360手机助手截图1205_17_14_01.jpg
02准备切换语言360手机助手截图1205_17_15_01.jpg
03选择Language了360手机助手截图1205_17_17_01.jpg
04打开语言了360手机助手截图1205_17_18_01.jpg
05找到中文了360手机助手截图1205_17_18_01.jpg
06配置中文了360手机助手截图1205_17_18_01.jpg
07打开USB摄像头360手机助手截图1205_17_21_01.jpg
01原始桌面 360手机助手截图1205_14_18_01.jpg
02应用程序界面360手机助手截图1205_14_20_01.jpg
02默认打开以太网360手机助手截图1205_14_19_01.jpg
04打开上网程序360手机助手截图1205_14_20_01.jpg
05简单输入雅虎360手机助手截图1205_14_21_01.jpg
06可以上雅虎了360手机助手截图1205_14_22_01.jpg
07尝试关闭以太网360手机助手截图1205_14_26_01.jpg
08在Android层关闭以太网360手机助手截图1205_14_26_01.jpg
09关闭以太网打开WIFI了360手机助手截图1205_14_28_01.jpg
10显示密码并输入密码之后点连接360手机助手截图1205_14_29_01.jpg
11WIFI已经连接了360手机助手截图1205_14_30_01.jpg
12使用WIFI上网页了360手机助手截图1205_14_37_01.jpg
13打开蓝牙了360手机助手截图1205_14_40_01.jpg
14让其它设备可以检测到360手机助手截图1205_14_41_01.jpg
15配置BT的检测超时设置360手机助手截图1205_14_42_01.jpg
16配置BT的检测超时设置360手机助手截图1205_14_43_01.jpg
17设置BT永不超时360手机助手截图1205_14_44_01.jpg
(由于SDK中只做好了蓝牙的发送程序,蓝牙接收的时候竟然不弹出窗口,好奇葩呀!)
18蓝牙配对请求360手机助手截图1205_14_45_01.jpg
88关于设备360手机助手截图1205_18_45_01.jpg
01按照官方步骤编译NanoPiM1Plus的Android
标签:img sun efault ria evel max package defcon 雅虎
原文:http://www.cnblogs.com/wb4916/p/7998378.html
01按照官方步骤编译NanoPiM1Plus的Android的更多相关文章
- 02使用常规步骤编译NanoPiM1Plus的Android4.4.2
02使用常规步骤编译NanoPiM1Plus的Android4.4.2 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 21504965 AT qq.com 完成时间:2017/12/5 17:51 版本 ...
- 系列篇|编译可在Android上运行的依赖库(一):glib库
前言 这是系列文章,它们由<编译可在Android上运行的glib库>及其他4篇文章组成,这4篇文章在“编译依赖库”一节中列出.由于glib库依赖于其他第三方库,所以需要先将依赖的第三方库 ...
- 编译可在Android上运行的qemu user mode
前言 本文在Ubuntu 64位系统上对qemu项目进行交叉编译,并且只编译与qemu user mode有关的代码. 下文中的”NDK”若无特殊说明均指”Android NDK”. 下文中”$NDK ...
- java-cef系列视频第一集:从官方代码编译
本视频介绍了如何从官方给出步骤编译java-cef代码,生成可运行可移植的发行版. 值得一提的是:截至2016-09-24java-cef代码编译方式有所改变,读者请自行查看bitbucket上关于编 ...
- 【转】在Ubuntu上下载、编译和安装Android最新源代码
原文网址:http://blog.csdn.net/luoshengyang/article/details/6559955 看完了前面说的几本书之后,对Linux Kernel和Android有一定 ...
- 在Ubuntu上下载、编译和安装Android最新源码
看完了前面说的几本书之后,对Linux Kernel和Android有一定的认识了,是不是心里蠢蠢欲动,想小试牛刀自己编译一把Android源码了呢?一直习惯使用Windows系统,而Android源 ...
- 在Ubuntu上下载、编译和安装Android最新源代码
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6559955 看完了前面说的几本书之后,对Lin ...
- 反编译 轻松调频 Android APP 下载“飞鱼秀”录音
经常听“飞鱼秀”,但是由于时间的原因,只能听回放,但是轻松调频的APP做的有点儿... 听回放的时候经常会中断,还不能拖动进度条,就决定把录音下载下来听. 1.反编译apk(Android反编译过程见 ...
- Linux下编译VLC for Android源代码总结
转:http://blog.chinaunix.net/uid-26611383-id-3678766.html 由于项目需要,需要一个在android平台能够支持RTSP协议的播放器,由于之前没有a ...
随机推荐
- MongoDB小结07 - update【$addToSet & $each】
用$addToSet更新可以避免重复,将它与$each组合起来,可以一次性添加多条(就算后添加的值已存在也没有关系) db.user.update({"name":"co ...
- Swift 与 Kotlin 的简单对比
一位国外的程序员认为 Swift 的语法与 Kotlin 相似,并整理了一些 Swift 和 Kotlin 的对比,下面是一些例子,大家不妨也看看. BASICS Hello World Swift ...
- win7系统下重启之后打印机服务就会自动停止的解决方法
win7系统下重启之后打印机服务就会自动停止的解决方法: 第一步.进入Win7系统后,您需要启动win7系统的任务管理器窗口,然后切换到进程这一栏中,将spoolsv.exe运行进程结束掉.之后,您同 ...
- Mac使用技巧之Finder的个人收藏
当使Finder的时候,左側会列出来个人收藏,能够非常方便的打开对应的文件夹.那么怎样把自己新建的文件夹也增加到个人收藏呢? 1.默认的个人收藏 2.新建名字为my_ios_demo文件夹,拖动这个文 ...
- react 项目实战(一)创建项目 及 服务端搭建
1.安装 React社区提供了众多的脚手架,这里我们使用官方推荐的create-react-app. //安装脚手架 npm install -g create-react-app //生成并运行项目 ...
- Angularjs1.x 项目结构
大部分的项目结构是以 directives , service, controller 为基础来搭建的项目架构的,但这里更偏向于以应用场景来进行项目架构,因此这里的文件夹结构可能与您之前遇到的结构不同 ...
- 从Linux内核升级的必要性说开去
Linux内核更新超级频繁,可是有必要时刻升级吗?个人感觉没有必要,可是你要时刻关注新特性列表,然后把自己的内核升级到离最新版本号差一两个月公布的版本号而不是最新版本号.以保证稳定性,由于一两个月的时 ...
- ajax 跨域查看
var CSRF_HEADER = 'X-CSRF-Token'; var setCSRFToken = function(securityToken) { jQuery.ajaxPrefilter( ...
- JspSmartUpload 实现上传
2.save 作用:将所有上传文件保存到指定文件夹下,并返回保存的文件个数. 原型:public int save(String destPathName) 和public int save(St ...
- 图片存储系统TFS
1 TFS和GFS比较 1.1 GFS的应用场景 第一,百万级别的文件,并且是大文件,文件都是100MB以上,1G级别的文件很常见. 第二,集群是建立在商业计算机之上,并不可靠,监控各个节点的状态,当 ...