GalaxyS3I9300Build » History » Revision 6
Revision 5 (Loic Dachary, 10/22/2016 10:06 PM) → Revision 6/12 (Wolfgang Wiedmeyer, 05/07/2017 07:31 PM)
h1. Galaxy S 3 (I9300) Build This explains how to build Replicant for the Galaxy S 3 (I9300). h2. Prerequisites Before building, you must make sure that: * You have installed the build dependencies: [[BuildDependenciesInstallation]] * You have downloaded Replicant 6.0 4.2 sources: [[Replicant60ReplicantSourceCode]] [[ReplicantSourceCode]] * Your sources are up to date: [[ReplicantSourceCode#DownloadingUpdating-the-source-code|Downloading/Updating [[ReplicantSourceCode#DownloadingUpdating-the-source-from-the-repos|Downloading/Updating the source from the repos]] * Your terminal is running in the directory where the sources were downloaded h2. Warning *Do not build as root, always build as user.* h2. Building All of Setup the following build commands need to be run in the source tree root folder. First, the toolchain needs to be built: environment: <pre> ./vendor/replicant/build-toolchain </pre> *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.* Then, prepare the shell environment for the Replicant build: <pre> . source build/envsetup.sh lunch replicant_i9300-userdebug export ANDROID_JAVA_HOME=$JAVA_HOME </pre> Start the build: <pre> parallel_tasks=$(echo "$(grep 'processor' /proc/cpuinfo | wc -l ) + 1" | bc) make -j$parallel_tasks bacon </pre> The -jn argument is to indicate the number of parallel tasks during the build. You can remove it from the command line to have only one task at a time. With fast hardware, best results will come with @-j9@, @-j16@ and @-j32@. Finally, sign the resulting images: <pre> ./vendor/replicant/sign-build i9300 </pre> The first time you run the script, it will ask you a few questions that are needed to generate the necessary signing keys. h2. Output files The produced files are located at: * built target images: @out/dist/i9300/@ @out/target/product/i9300/@ * built host tools: @out/host/linux-x86/bin/@