bpi_a64_android的编译配置文件排版.txt
2017/3/9 14:33
0、压缩包的处理:
rootroot@cm-System-Product-Name:/home/wwt/a64$ tar zxvf BPI-A64-Android_SourceCode.tar.gz
增加3个编译链
Notice: Please download this file to the correct path https://drive.google.com/open?id=0B_YnvHgh2rwjaVRrc2VoR0xLTlE
(1)gcc-linaro-aarch64.tar.xz ==> /lichee/buildroot/dl
(2)gcc-linaro-aarch64.tar.xz ==> /lichee/brandy/toolchain
(3)gcc-linaro-arm.tar.xz ==> /lichee/brandy/toolchain
重新分块压缩:
rootroot@cm-System-Product-Name:/home/wwt/a64$ tar zcvf - bpi_a64_android/ | split -b 3900000000 - bpi_a64_android_wyb_patch1.tar.gz
1、编译lichee内核
rootroot@cm-System-Product-Name:/home/wwt/a64$
rootroot@cm-System-Product-Name:/home/wwt/a64$ cd bpi_a64_android/
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android$ cd lichee/
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee$ ./build.sh config
Welcome to mkscript setup progress
All available chips:
0. sun50iw1p1
Choice: 0
All available platforms:
0. android
- dragonboard
- linux
- camdroid
- secureandroid
Choice: 0
All available kernel: - linux-3.10
- linux-3.4
Choice: 0
All available boards: - bpi-m64-hdmi
- bpi-m64-lcd
Choice: 1
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee$ ./build.sh
Copy boot.img to output directory …
Copy modules to target …
sun50iw1p1 compile Kernel successful
INFO: build kernel OK.
INFO: build rootfs …
INFO: skip make rootfs for android
INFO: build rootfs OK.
INFO: ----------------------------------------
INFO: build lichee OK.
INFO: ----------------------------------------
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee$
2、编译Android
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee$ cd …/android/
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$ source build/envsetup.sh
including device/asus/deb/vendorsetup.sh
including device/asus/flo/vendorsetup.sh
including device/asus/fugu/vendorsetup.sh
including device/generic/mini-emulator-arm64/vendorsetup.sh
including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh
including device/generic/mini-emulator-mips/vendorsetup.sh
including device/generic/mini-emulator-x86_64/vendorsetup.sh
including device/generic/mini-emulator-x86/vendorsetup.sh
including device/htc/flounder/vendorsetup.sh
including device/lge/hammerhead/vendorsetup.sh
including device/moto/shamu/vendorsetup.sh
including device/softwinner/bpi-m64-hdmi/vendorsetup.sh
including device/softwinner/bpi-m64-lcd/vendorsetup.sh
including device/softwinner/common/vendorsetup.sh
including sdk/bash_completion/adb.bash
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$ lunch
You’re building on Linux
Lunch menu… pick a combo:
- aosp_arm-eng
- aosp_arm64-eng
- aosp_mips-eng
- aosp_mips64-eng
- aosp_x86-eng
- aosp_x86_64-eng
- aosp_deb-userdebug
- aosp_flo-userdebug
- full_fugu-userdebug
- aosp_fugu-userdebug
- mini_emulator_arm64-userdebug
- m_e_arm-userdebug
- mini_emulator_mips-userdebug
- mini_emulator_x86_64-userdebug
- mini_emulator_x86-userdebug
- aosp_flounder-userdebug
- aosp_hammerhead-userdebug
- aosp_hammerhead_fp-userdebug
- aosp_shamu-userdebug
- bpi_m64_hdmi-eng
- bpi_m64_hdmi-user
- bpi_m64_hdmi-userdebug
- bpi_m64_lcd-eng
- bpi_m64_lcd-user
- bpi_m64_lcd-userdebug
Which would you like? [aosp_arm-eng] 23
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=6.0.1
TARGET_PRODUCT=bpi_m64_lcd
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=generic
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv7-a-neon
TARGET_2ND_CPU_VARIANT=cortex-a15
HOST_ARCH=x86_64
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=MMB29M
OUT_DIR=out
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$ extract-bsp
/home/wwt/a64/bpi_a64_android/android/device/softwinner/bpi-m64-lcd/bImage copied!
/home/wwt/a64/bpi_a64_android/android/device/softwinner/bpi-m64-lcd/modules copied!
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$ make -j12
Creating filesystem with parameters:
Size: 2147483648
Block size: 4096
Blocks per group: 32768
Inodes per group: 8192
Inode size: 256
Journal blocks: 8192
Label: system
Blocks: 524288
Block groups: 16
Reserved block group size: 127
Created filesystem with 2422/131072 inodes and 260574/524288 blocks
Install system fs image: out/target/product/bpi-m64-lcd/system.img
out/target/product/bpi-m64-lcd/system.img+out/target/product/bpi-m64-lcd/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p maxsize=2192446080 blocksize=4224 total=1034077436 reserve=22146432
make completed successfully (57:57 (mm:ss))
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$
3、打包img镜像
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$ pack -d
/home/wwt/a64/bpi_a64_android/lichee/tools/pack/sun50iw1p1_android_bpi-m64-lcd_card0.img
pack finish
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$ pack
/home/wwt/a64/bpi_a64_android/lichee/tools/pack/sun50iw1p1_android_bpi-m64-lcd_uart0.img
pack finish
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/android$
4、编译uboot(可选)
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee/brandy$ ./build.sh -p sun50iw1p1
CC external/openssl_ext.c …
make -C /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/spl/
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/ss_spl.c …
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/spc_spl.c …
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/smc_spl.c …
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/gic_spl.c …
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/debug.c …
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/ctype.c …
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/eabi_compat.c …
CC /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/spl/efuse_spl.c …
make -C /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/spl/lib/
make[3]: 没有什么可以做的为 `all’。
/home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/…/gcc-linaro/bin/arm-linux-gnueabi-gcc -E -include /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/include/u-boot/u-boot.lds.h -DSBROMSWADDR="(0x10480)" -ansi -D__ASSEMBLY__ -P - </home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/main/sboot.lds >/home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/sboot.lds
/home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/…/gcc-linaro/bin/arm-linux-gnueabi-ld /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/dram/libchipid.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/dram/libdram.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/mmc/libmmc.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/arch/arm/cpu/armv7/sun50iw1p1/nand/libnand.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/flash/libflash.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/libs/libgeneric.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/load/libload.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/main/libmain.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/openssl/libopenssl.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/spl/libsource_spl.o /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/spl/lib/libgeneric.o -L /home/wwt/a64/bpi_a64_android/lichee/brandy/gcc-linaro/bin/…/lib/gcc/arm-linux-gnueabi/4.6.3 -lgcc -T/home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/sboot.lds -o sboot.axf -Map sboot.map
/home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/…/gcc-linaro/bin/arm-linux-gnueabi-objcopy -O binary /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/sboot.axf /home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/sunxi_spl/sbrom/sboot.bin
"sboot_sun50iw1p1.bin" -> "/home/wwt/a64/bpi_a64_android/lichee/brandy/u-boot-2014.07/…/…/tools/pack/chips/sun50iw1p1/bin/sboot_sun50iw1p1.bin"
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee/brandy$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee/brandy$
5、配置menuconfig(裁剪内核)
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee$ ./build.sh config
Welcome to mkscript setup progress
All available chips:
0. sun50iw1p1
Choice: 0
All available platforms:
0. android
- dragonboard
- linux
- camdroid
- secureandroid
Choice: 0
All available kernel: - linux-3.10
- linux-3.4
Choice: 0
All available boards: - bpi-m64-hdmi
- bpi-m64-lcd
Choice: 1
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee$ cd linux-3.10/
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee/linux-3.10$ cp .config bak1_orig.config
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee/linux-3.10$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee/linux-3.10$
rootroot@cm-System-Product-Name:/home/wwt/a64/bpi_a64_android/lichee/linux-3.10$ make ARCH=arm64 menuconfig
(1)改大打印缓存
General setup —>
(17) Kernel log buffer size (16 => 64KB, 17 => 128KB)
修改为:
(18) Kernel log buffer size (16 => 64KB, 17 => 128KB)
(2)只保留博通/正基的WIFI/BT:AP6212等
Device Drivers —>
Network device support —>
Wireless LAN —>
Broadcom FullMAC wireless cards support
(/system/vendor/modules/fw_bcmdhd.bin) Firmware path
(/system/vendor/modules/nvram.txt) NVRAM path
Enable Chip Interface (SDIO bus interface support) —>
Interrupt type (Out-of-Band Interrupt) —>
Realtek 8723B SDIO or SPI WiFi
Realtek 8723BS_VQ0 WiFi
Realtek 8189F SDIO WiFi
修改为:
< > Realtek 8723B SDIO or SPI WiFi
< > Realtek 8723BS_VQ0 WiFi
< > Realtek 8189F SDIO WiFi
(3)关闭SELinux安全内核方便调试
Security options —>
NSA SELinux Support
NSA SELinux boot parameter
(1) NSA SELinux boot parameter default value
] NSA SELinux runtime disable
NSA SELinux Development Support
NSA SELinux AVC Statistics
(1) NSA SELinux checkreqprot default value
] NSA SELinux maximum supported policy format version
修改为:
] NSA SELinux Support
(4)在内核中增加USB摄像头/打开UVC的驱动
Device Drivers —>
<*> Multimedia support —>
] Media USB Adapters —>
修改为:
Media USB Adapters —>
— Media USB Adapters
*** Webcam devices ***
< > USB Video Class (UVC)
修改为:
USB Video Class (UVC)
UVC input events device support (NEW)