GalaxyS3I9300Build » History » Version 10
Wolfgang Wiedmeyer, 06/21/2017 09:18 PM
link to build tips
1 | 3 | Paul Kocialkowski | h1. Galaxy S 3 (I9300) Build |
---|---|---|---|
2 | 1 | Paul Kocialkowski | |
3 | 8 | Wolfgang Wiedmeyer | This page explains how to build Replicant for the Galaxy S 3 (I9300). |
4 | 1 | Paul Kocialkowski | |
5 | h2. Prerequisites |
||
6 | |||
7 | 2 | Paul Kocialkowski | Before building, you must make sure that: |
8 | 4 | Paul Kocialkowski | * You have installed the build dependencies: [[BuildDependenciesInstallation]] |
9 | 7 | Wolfgang Wiedmeyer | * You have downloaded Replicant 6.0 sources: [[ReplicantSourceCode]] |
10 | 6 | Wolfgang Wiedmeyer | * Your sources are up to date: [[ReplicantSourceCode#DownloadingUpdating-the-source-code|Downloading/Updating the source from the repos]] |
11 | 2 | Paul Kocialkowski | * Your terminal is running in the directory where the sources were downloaded |
12 | 1 | Paul Kocialkowski | |
13 | h2. Warning |
||
14 | |||
15 | *Do not build as root, always build as user.* |
||
16 | |||
17 | 10 | Wolfgang Wiedmeyer | See the [[BuildTips|build tips]] if you are facing issues. |
18 | |||
19 | 1 | Paul Kocialkowski | h2. Building |
20 | |||
21 | 6 | Wolfgang Wiedmeyer | All of the following build commands need to be run in the source tree root folder. |
22 | |||
23 | First, the toolchain needs to be built: |
||
24 | 1 | Paul Kocialkowski | <pre> |
25 | 6 | Wolfgang Wiedmeyer | ./vendor/replicant/build-toolchain |
26 | </pre> |
||
27 | |||
28 | *If you have executed any of the commands below and you want to run the toolchain build again, you will need to open a new shell.* |
||
29 | |||
30 | Then, prepare the shell environment for the Replicant build: |
||
31 | |||
32 | <pre> |
||
33 | . build/envsetup.sh |
||
34 | 2 | Paul Kocialkowski | lunch replicant_i9300-userdebug |
35 | 1 | Paul Kocialkowski | </pre> |
36 | |||
37 | 9 | Wolfgang Wiedmeyer | Now you can start the build: |
38 | 6 | Wolfgang Wiedmeyer | |
39 | 1 | Paul Kocialkowski | <pre> |
40 | 2 | Paul Kocialkowski | parallel_tasks=$(echo "$(grep 'processor' /proc/cpuinfo | wc -l ) + 1" | bc) |
41 | 1 | Paul Kocialkowski | make -j$parallel_tasks bacon |
42 | </pre> |
||
43 | |||
44 | 9 | Wolfgang Wiedmeyer | The @-jn@ argument indicates the number of parallel tasks during the build. You can remove it from the command line to have only one task at a time. |
45 | @$parallel_tasks@ holds an optimized number of parallel tasks for your hardware. You may want to reduce this number if e.g. the computer runs out of RAM during the build. |
||
46 | 1 | Paul Kocialkowski | |
47 | 6 | Wolfgang Wiedmeyer | Finally, sign the resulting images: |
48 | |||
49 | <pre> |
||
50 | ./vendor/replicant/sign-build i9300 |
||
51 | </pre> |
||
52 | |||
53 | 9 | Wolfgang Wiedmeyer | The first time you run the script, it will ask you a few questions that are needed to generate the necessary signing keys. |
54 | 6 | Wolfgang Wiedmeyer | |
55 | 1 | Paul Kocialkowski | h2. Output files |
56 | |||
57 | 2 | Paul Kocialkowski | The produced files are located at: |
58 | 6 | Wolfgang Wiedmeyer | * built target images: @out/dist/i9300/@ |
59 | 1 | Paul Kocialkowski | * built host tools: @out/host/linux-x86/bin/@ |