R58的编译步骤f1选项v1.1版本

2017/3/16 16:38

请严重注意:

编译全志R58的Android6.0.1的系统和其它系统有两个不同:

1、在执行pack打包之前,必须执行verity_data_init,否则f1选项编译的系统会打包失败!

2、在执行pack打包之前,必须编译uboot,否则系统起不来/没有显示。

3、octopus_perf-eng不是适配SC5806开发板的。

一、系统编译:

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig$ cat android_r58m_wyb_20170314split.tar.gza* > android.tar.gz

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig$ tar zxvf lichee_r58m_wyb_20170308.tar.gz

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig$ tar zxvf android.tar.gz

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig$ cd lichee/

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee$ ./build.sh config

Welcome to mkscript setup progress

All available chips:

0. sun50iw1p1

1. sun8iw10p1

2. sun8iw1p1

3. sun8iw3p1

4. sun8iw5p1

5. sun8iw6p1

6. sun8iw7p1

7. sun8iw8p1

8. sun8iw9p1

9. sun9iw1p1

Choice: 5

All available platforms:

0. android

1. dragonboard

2. linux

3. camdroid

4. secureandroid

Choice: 0

All available kernel:

0. linux-3.10

1. linux-3.4

Choice: 1

All available boards:

0. eagle-p83

1. f1

2. fpga

3. perf1_v1_0

4. perf2_v1_0

5. perf3_v1_0

6. qc

Choice: 1

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee$

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee$ ./build.sh

if [ -z /home/wwt/r58m_orig/lichee/linux-3.4/output/lib/modules/3.4.39 ]; then \

cp -u sgx544/android/kernel_mode/eurasia_km/eurasiacon/binary2_sunxi_android_release/target/pvrsrvkm.ko /kernel_mode/linux-3.4; \

fi

make:离开目录“/home/wwt/r58m_orig/lichee/linux-3.4/modules/gpu”

regenerate rootfs cpio

11281 块

12037 块

build_ramfs

Copy boot.img to output directory ...

Copy modules to target ...

sun8iw6p1 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/r58m_orig/lichee$

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee$ cd ../android/

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/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/astar-d7/vendorsetup.sh

including device/softwinner/astar-h7/vendorsetup.sh

including device/softwinner/common/vendorsetup.sh

including device/softwinner/octopus-f1/vendorsetup.sh

including device/softwinner/octopus-perf/vendorsetup.sh

including device/softwinner/tulip-p1/vendorsetup.sh

including device/softwinner/tulip-p2/vendorsetup.sh

including sdk/bash_completion/adb.bash

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/android$ lunch

You're building on Linux

Lunch menu... pick a combo:

1. aosp_arm-eng

2. aosp_arm64-eng

3. aosp_mips-eng

4. aosp_mips64-eng

5. aosp_x86-eng

6. aosp_x86_64-eng

7. aosp_deb-userdebug

8. aosp_flo-userdebug

9. full_fugu-userdebug

10. aosp_fugu-userdebug

11. mini_emulator_arm64-userdebug

12. m_e_arm-userdebug

13. mini_emulator_mips-userdebug

14. mini_emulator_x86_64-userdebug

15. mini_emulator_x86-userdebug

16. aosp_flounder-userdebug

17. aosp_hammerhead-userdebug

18. aosp_hammerhead_fp-userdebug

19. aosp_shamu-userdebug

20. astar_d7-eng

21. astar_d7-user

22. astar_h7-eng

23. astar_h7-user

24. octopus_f1-eng

25. octopus_f1-user

26. octopus_perf-eng

27. octopus_perf-user

28. tulip_p1-eng

29. tulip_p1-user

30. tulip_p2-eng

31. tulip_p2-user

Which would you like? [aosp_arm-eng] 24

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=6.0.1

TARGET_PRODUCT=octopus_f1

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

TARGET_2ND_ARCH=

TARGET_2ND_ARCH_VARIANT=

TARGET_2ND_CPU_VARIANT=

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/r58m_orig/android$

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/android$ extract-bsp

/home/wwt/r58m_orig/android/device/softwinner/octopus-f1/bImage copied!

/home/wwt/r58m_orig/android/device/softwinner/octopus-f1/modules copied!

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/android$ make -j12

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/android$ verity_data_init

请严重注意,这个时候打包没有显示的!^_^必须编译uboot。(这个步骤可以跳过!)

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/android$ pack

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/android$ cd ../lichee/brandy/

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee/brandy$

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee/brandy$ ./build.sh -p sun8iw6p1

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee/brandy$ cd -

/home/wwt/r58m_orig/android

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/android$ pack

二、内核的裁剪(可选):

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee$ ./build.sh config

Welcome to mkscript setup progress

All available chips:

0. sun50iw1p1

1. sun8iw10p1

2. sun8iw1p1

3. sun8iw3p1

4. sun8iw5p1

5. sun8iw6p1

6. sun8iw7p1

7. sun8iw8p1

8. sun8iw9p1

9. sun9iw1p1

Choice: 5

All available platforms:

0. android

1. dragonboard

2. linux

3. camdroid

4. secureandroid

Choice: 0

All available kernel:

0. linux-3.10

1. linux-3.4

Choice: 1

All available boards:

0. eagle-p83

1. f1

2. fpga

3. perf1_v1_0

4. perf2_v1_0

5. perf3_v1_0

6. qc

Choice: 1

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee$

1、打印等级调整

rootroot@cm-System-Product-Name:/home/wwt/r58m_orig/lichee/linux-3.4$ make ARCH=arm menuconfig

General setup  --->

(16) Kernel log buffer size (16 => 64KB, 17 => 128KB)

修改为:

(18) Kernel log buffer size (16 => 64KB, 17 => 128KB)

2、关闭Realtek的WIFI/BT。只使用AP6212等。(正基的模块,博通的芯片)

Device Drivers  --->

[*] Network device support  --->

[*]   Wireless LAN  --->

<M>   Broadcom FullMAC wireless cards support

(/system/vendor/modules/fw_bcmdhd.bin) Firmware path

(/system/vendor/modules/nvram.txt) NVRAM path

(/system/vendor/modules/config.txt) Config path

Enable Chip Interface (SDIO bus interface support)  --->

Interrupt type (Out-of-Band Interrupt)  --->

<M>   Realtek 8723B SDIO or SPI WiFi

<M>   Realtek 8723BS_VQ0 WiFi

修改为:

< >   Realtek 8723B SDIO or SPI WiFi

< >   Realtek 8723BS_VQ0 WiFi

3、关闭SELinux安全选项,方便调试

Security options  --->

[*] Security hooks for pathname based access control

(32768) Low address space for LSM to protect from user allocation

[*] 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  --->

[*]   Video capture adapters  --->

[*]   V4L USB devices  --->

--- V4L USB devices

< >   USB Video Class (UVC)

修改为:

<M>   USB Video Class (UVC)

[*]     UVC input events device support

05-06 03:23