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 ...
随机推荐
- RabbitMQ环境搭建教程收集(待实践)
先收集,后续再实践. http://blog.csdn.net/zyz511919766/article/details/41896823 http://blog.chinaunix.net/uid- ...
- spring 数据源JNDI 基于tomcat mysql配置
关键代码 <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean&q ...
- PyMySQL - Python3 MySQL数据库连接 - 基本操作
一.Python连接MySQL数据库 1.导入模块 #导入模块 import pymysql 2.打开数据库连接 #打开数据库连接 #注意:这里已经假定存在数据库testdb,db指定了连接的 ...
- 使用百度网盘实现自动备份VPS
http://ju.outofmemory.cn/entry/51536 经过轰轰烈烈的一轮网盘大战,百度网盘的容量已经接近无限(比如我的是3000多G ),而且百度网盘已经开放API,所以用来备份V ...
- python 爬虫必知必会
#python爬虫 #新闻数据 #机器学习:股票数据获取及分析 #网络搜索引擎的一个部件 #Http协议 #正则表达式 #多线程,分布式 #http报文展示 #Http 应答报文介绍 #1.应答码 # ...
- 第二次PHP面试题
昨天下午翘班去参加了人生中第二次PHP面试.是一家相对第一家更加专业的互联网公司.效果不如第一家理想,笔试题有点难,而且偏高理论,面试时面试官也还不错,一起探讨,可是他的问题我还是很多都不知道,果然是 ...
- SICP习题练习
练习1.6 new-if的三个参数会先被执行,这样就会无限循环下去 练习1.7 (define (sqrt-iter last-guess guess x) (if (good-enough? las ...
- Android编译详解之lunch命令 【转】
本文转载自: Android编译详解之lunch命令 (2012-10-08 10:27:55) 转载▼ 标签: it 分类: android内核剖析 Android的优势就在于其开源,手机和 ...
- react-native 项目更名步骤
刚开始开发项目的时候,更没有想好一个项目名称,如何才能更名一个RN APP名称呢,可按照如下方式操作即可. 使用说明 更改package.json { "name": " ...
- Apache Ignite——集合分布式缓存、计算、存储的分布式框架
Apache Ignite内存数据组织平台是一个高性能.集成化.混合式的企业级分布式架构解决方案,核心价值在于可以帮助我们实现分布式架构透明化,开发人员根本不知道分布式技术的存在,可以使分布式缓存.计 ...