Project

General

Profile

Actions

Replicant60BuildDependenciesInstallation » History » Revision 81

« Previous | Revision 81/89 (diff) | Next »
Denis 'GNUtoo' Carikli, 08/10/2021 07:15 PM


Replicant 6.0 build dependencies installation

Replicant can only be built on 64 bit x86 architectures, building on 32 bit x86 systems is no longer supported.
However, some prebuilt tools are still 32 bit x86 executables and some host tools are generated as 32 bit x86 executables.

It is recommended to have at least 4GB of RAM available.

Debian-based systems

Debian 9 (stretch)

Packages installation:

dpkg --add-architecture i386 ; apt-get update
apt-get build-dep gcc binutils llvm-defaults
apt-get install bash gcc-arm-none-eabi cmake python-dev swig ant bc proguard maven-debian-helper libemma-java libasm4-java libguava-java libnb-platform18-java libnb-org-openide-util-java libandroidsdk-ddmlib-java libmaven-source-plugin-java libfreemarker-java libmaven-javadoc-plugin-java ca-cacert curl gawk libgmp3-dev libmpfr-dev libmpc-dev git-core gperf libncurses-dev squashfs-tools pngcrush zip zlib1g-dev lzma libc6-dev-i386 g++-multilib lib32z1-dev lib32readline-dev lib32ncurses5-dev zlib1g-dev:i386 xsltproc python-mako schedtool gradle dirmngr libandroidsdk-sdklib-java eclipse-jdt libgradle-android-plugin-java android-sdk-build-tools android-sdk-platform-23 aapt lzop rsync

As repo tend to update itself (by downloading a new version of repo and running it) and that newer versions of repos also require newer versions of python, it doesn't work anymore on Debian 9 (stretch).

To work around that, we also released a version of repo that is self-contained . Make sure to read the README for installation instructions. The README content is also signed with gpg (by Denis 'GNUtoo' Carikli, who at the time of writing did the last Replicant 6 Release Candidates).

In addition you also need to workaround some issues with Debian 9 (stretch) with the path of grep, sed, and mkdir that prevent building the toolchain. See the /usr/bin/grep, /usr/bin/sed, /usr/bin/mkdir: No such file or directory section for how to do that.

Trisquel 9 (etiona)

Note that Trisquel 9 is a work in progress as some patches for it have not been sent yet, and we have not yet confirmed that it can build Replicant 6.0.

Packages installation:

dpkg --add-architecture i386 ; apt-get update
apt-get build-dep gcc binutils llvm-defaults
apt-get install bash gcc-arm-none-eabi cmake python3-dev swig ant bc proguard maven-debian-helper libasm4-java libguava-java libnb-platform18-java libnb-org-openide-util-java libandroidsdk-ddmlib-java libmaven-source-plugin-java libfreemarker-java libmaven-javadoc-plugin-java ca-cacert curl gawk libgmp3-dev libmpfr-dev libmpc-dev git gperf libncurses-dev squashfs-tools pngcrush zip zlib1g-dev lzma libc6-dev-i386 g++-multilib lib32z1-dev lib32readline-dev lib32ncurses5-dev zlib1g-dev:i386 xsltproc python3-mako schedtool gradle dirmngr libandroidsdk-sdklib-java eclipse-jdt libgradle-android-plugin-java android-sdk-build-tools android-sdk-platform-23 aapt lzop rsync
apt remove $(apt search "openjdk-11-" | grep "^openjdk-11-" | sed 's#/.*##') # Make sure that openjdk-8 is chosen. TODO: use updates-alternatives or some other method instead

As repo tend to update itself (by downloading a new version of repo and running it) and that newer versions of repos may also require newer versions of python that aren't in Trisquel 9.

If that appears to be the case, we also released a version of repo that is self-contained . Make sure to read the README for installation instructions. The README content is also signed with gpg (by Denis 'GNUtoo' Carikli, who at the time of writing did the last Replicant 6 Release Candidates).

In addition you may also need to workaround some issues with Trisquel 9 (stretch) with the path of grep, sed, and mkdir that prevent building the toolchain. See the /usr/bin/grep, /usr/bin/sed, /usr/bin/mkdir: No such file or directory section for how to do that.

Updated by Denis 'GNUtoo' Carikli about 3 years ago · 81 revisions

Also available in: PDF HTML TXT