Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search

Difference between revisions of "Rock/Android Build"

(Build the kernel)
(Build android source code)
Line 59: Line 59:
 
=== Build android source code ===
 
=== Build android source code ===
 
     source build/envsetup.sh
 
     source build/envsetup.sh
     lunch rk31sdk-eng
+
     lunch rk31sdk-eng     #Launch this config if you build '''android 4.2 JB for radxa rock'''
 +
    lunch radxa_rock-eng    #Launch this config if you build '''android 4.4.2 KK for radxa rock'''
 +
    lunch radxa_rock_pro-eng    #Launch this config if you build '''android 4.4.2 KK for radxa rock pro'''
 
     make -j8
 
     make -j8
  

Revision as of 03:09, 20 August 2014


Before start

Building AOSP(Android Open Source Project) for radxa rock is a huge task, it takes a lot of time and disk space. You can read the detail requirement of the machine on AOSP requirement page. The recommend building OS is Ubuntu 12.04 64bit. It takes about 35 minutes and 30G disk space on a intel 4770 processor(i7, quad core, 3.4Ghz) machine with 16G ram and SSD.

Initializing a Build Environment

  • Refer instructions from Google. Below is what we tested and set up the environment.

Install JDK

   sudo add-apt-repository ppa:webupd8team/java
   sudo apt-get update
   sudo apt-get install oracle-java6-installer

Install required packages - ubuntu 12.04

   sudo apt-get install 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 \
   g++-multilib mingw32 tofrodos gcc-multilib ia32-libs\
   python-markdown libxml2-utils xsltproc zlib1g-dev:i386

Install required packages - ubuntu 13.10 and 14.04

   sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev\
   libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl\
   libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils\
   xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev\
   lib32readline-gplv2-dev gcc-multilib libswitch-perl

Install ARM toolchain and building kernel related pacakges

   sudo apt-get install gcc-arm-linux-gnueabihf
   sudo apt-get install lzop libncurses5-dev
   export ARCH=arm
   export CROSS_COMPILE=arm-linux-gnueabihf-

Install libraries for other tools

   sudo apt-get install libssl1.0.0 libssl-dev

Get the source code

For android 4.2 Jelly Bean

Git clone from the bitbucket repo:

   git clone -b radxa-dev https://bitbucket.org/radxa/android_radxa_rock.git

For android 4.4.2 KitKat

   wget http://dl.radxa.com/rock/source/radxa_rock_android4-4.tgz
   tar zxvf radxa_rock_android4-4.tgz

Build the kernel

   export ARCH=arm
   cd kernel
   make rk3188_radxa_rock_defconfig # Use this config If you build the android 4.2 JB image for radxa rock
   make rk3188_radxa_rock_kitkat_defconfig # Use this config If you build the android 4.4 KK image for radxa rock
   make rk3188_box_radxa_rock_pro_hdmi_defconfig # Use this config if you build the android 4.4 KK image for radxa rock pro
   make kernel.img #kernel.img is the normal kernel image with rockchip crc
   cd ..

Build android source code

   source build/envsetup.sh
   lunch rk31sdk-eng     #Launch this config if you build android 4.2 JB for radxa rock
   lunch radxa_rock-eng    #Launch this config if you build android 4.4.2 KK for radxa rock
   lunch radxa_rock_pro-eng    #Launch this config if you build android 4.4.2 KK for radxa rock pro
   make -j8

Generate the image

   ./mkimage.sh ota

you will get boot.img recovery.img system.img under rockdev/Image, and update.img under rockdev

Flash the image

Next, follow the rock/flash the image to flash the image you just build.

External reference

http://www.cnx-software.com/2014/01/17/getting-started-with-raxda-rock-building-an-android-4-2-image-from-source/