blob: b31b4ee7c32d486f7dd30baeafebbeec663b10c0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
h2. Disclaimer
The use of Juno software is subject to the terms of the Juno "End User License Agreement":https://releases.linaro.org/14.06/android/juno-lsk/#tabs-5.
h1. Accessing Source Code
h2. Linaro Android Source Code
Run the "linaro_android_build_cmds.sh":http://releases.linaro.org/14.06/android/juno-lsk/linaro_android_build_cmds.sh script, it will download the entire source code for both Android and the kernel and attempt to build it.
The pinned and source manifests can be found here:
* "Pinned Manifest":http://releases.linaro.org/14.06/android/juno-lsk/pinned-manifest.xml ("?":https://wiki.linaro.org/Platform/Android/ReproduceABuildExactly)
* "Source Manifest":http://releases.linaro.org/14.06/android/juno-lsk/source-manifest.xml
h2. Kernel Source Code
Obtain the exact *kernel source code* for this cycle by using the "linaro_kernel_build_cmds.sh":http://releases.linaro.org/14.06/android/juno-lsk/linaro_kernel_build_cmds.sh script to download the source and build it. You can get the kernel configuration from "here":http://releases.linaro.org/14.06/android/juno-lsk/kernel_config (listed above)
h2. Compiling Linaro Android RootFS+Kernel
The following simple steps download, install and compile a complete Linaro Android distribution
* Download and install Ubuntu 12.04 64 bit or newer ("download":http://www.ubuntu.com)
* Install the following packages:
bc. sudo apt-get install zip curl flex bison build-essential git-core gnupg gperf zlib1g-dev libx11-dev x11proto-core-dev \
gcc-multilib g++-multilib libc6-dev-i386 ia32-libs lib32z-dev gcc-4.5 g++-4.5 cpp-4.5 gcc-4.5-multilib g++-4.5-multilib \
uuid-dev openjdk-6-jdk ant lib32ncurses5-dev xsltproc
* Download the Android building script for this release from "here":http://releases.linaro.org/14.06/android/juno-lsk/linaro_android_build_cmds.sh or from the list of artifacts listed above.
* Run the script
bc. chmod a+x linaro_android_build_cmds.sh
./linaro_android_build_cmds.sh
h3. Installing Android on your board
* Insert a USB drive and note the assigned @'/dev/sdX'@ or @'/dev/mmcblk0'@
bc. dmesg | less
Look for a line that looks like the following at the end of the log
@[288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 <sdc5 sdc6 >@
Or, if your machine uses '/dev/mmcblkX', you may see a line line this:
@[10770.938042] mmcblk0: p1 p2 p3 p4 < p5 p6 >@
*WARNING:* In the next step, make sure you use /dev/"whatever you see above". *You can erase your hard drive* with the wrong parameter.
* Create media
bc. cd android/out/target/product/
sudo linaro-android-media-create --mmc /dev/sdX --dev juno --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2
* Insert the USB drive into your board and reboot it
p. You must configure UEFI exach time you create a new disk image.
h2. Compiling and installing your Kernel
h3. Prerequisites
* Download and install Ubuntu 12.04 64 bit or newer ("download":http://www.ubuntu.com)
* Install the following packages by typing:
bc. sudo apt-get install build-essential git curl
* toolchain
bc. mkdir -p ~/bin
cd ~/bin
wget http://releases.linaro.org/13.11/components/toolchain/binaries/gcc-linaro-aarch64-linux-gnu-4.8-2013.11_linux.tar.xz
tar xf gcc-linaro-aarch64-linux-gnu-4.8-2013.11_linux.tar.xz
PATH=$PATH:~/bin/gcc-linaro-aarch64-linux-gnu-4.8-2013.11_linux/bin
* Create a working subdirectory
* Download the auto build script for this release from the list of artifacts above (the kernel configuration will be automatically downloaded).
* Run the build script
bc. chmod a+x linaro_kernel_build_cmds.sh
./linaro_kernel_build_cmds.sh
h1. Installing your kernel
This section is common for both Android and OpenEmbedded
* Create the Device Tree blob if you don’t have one in your Linaro image (note, the A9 Core Tile boots using an ATAGS kernel):
bc. make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- dtbs
* Insert the USB drive containing the Linaro disk image
* Copy the kernel onto the memory card
bc. cp arch/arm64/boot/Image /media/boot/
cp arch/arm64/boot/dts/juno.dtb /media/boot
* Eject the USB drive @eject /media/boot@
* Insert the USB drive into the board and power it on
|