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