Replicant60BuildDependenciesInstallation » History » Revision 40
Revision 39 (Paul Kocialkowski, 08/03/2014 09:35 PM) → Revision 40/89 (Paul Kocialkowski, 11/10/2014 03:01 PM)
h1. Build Dependencies Installation *Replicant can only In order to be built on able to build Replicant, you need to install some (free) software: h2. Required Packages * python 2.x * bison * flex * git * gperf * libncurses development headers * make * gcc, g++ * mksquashfs * openjdk 6 * pngcrush * wget * zip * zlib development headers * lzma h3. Additional requirements for 64 bit x86 architectures, building on computers * 32 bit x86 systems is no longer supported.* libncurses However, some prebuilt tools are still * 32 bit x86 executables and some host tools are generated as libreadline * 32 bit x86 executables. libc6 headers * 32 bit zlib * gcc, g++ multilib support h2. Debian-based systems Command line installation h3. Trisquel 7.0 Trisquel/Debian/Ubuntu <pre> Required Packages: apt-get install git gnupg flex bison gperf build-essential zip curl openjdk-7-jre openjdk-7-jdk libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 </pre> h3. Debian 8 <pre> apt-get install bison flex git-core gperf libncurses-dev build-essential squashfs-tools openjdk-7-jre openjdk-7-jdk openjdk-6-jre openjdk-6-jdk pngcrush wget zip zlib1g-dev lzma libxml2-utils </pre> Additional requirements for 64 bit computers: <pre> apt-get install libc6-dev-i386 gcc-multilib g++-multilib lib32z1-dev lib32readline5-dev lib32ncurses5-dev zlib1g-dev:i386 </pre> h3. Tweaks On Debian sid, multi-arch i386 has to be enabled and the following is also required: <pre> apt-get install zlib1g-dev:i386 </pre> * If the packages manager complains about @lib32readline5-dev@ being missing, replace it with @lib32readline-gplv2-dev@ in the command line. * If the @/usr/lib/zconf.h@ header is missing, you will have to create a symlink there: <pre> sudo ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/lib/zconf.h </pre> * If you see errors about incompatible library versions, you may need some symlinks. For example: <pre> sudo ln -s /usr/lib32/libstdc++.so.6.0.14 /usr/lib32/libstdc++.so sudo ln -s /usr/lib32/libz.so.1.2.3.4 /usr/lib32/libz.so </pre> h2. Arch Linux-based systems h3. Parabola Parabola/Arch h4. For 32 bit and 64 bit installations Then update all packages:: <pre> pacman -Syu </pre> Then install the required Packages: <pre> pacman -S core/bison core/flex core/make core/ncurses core/xz core/zlib extra/bc extra/git extra/gperf extra/gperftools extra/jdk7-openjdk extra/openjdk7-src extra/jre7-openjdk extra/wget extra/zip community/squashfs-tools libre/pngcrush libre/unzip-libre </pre> Also set python2 as the default for now. (Else repo will issue such warning: "warning: Python 3 support is currently experimental. YMMV.") <pre> cd /usr/local/bin/ ln -s /usr/bin/python2 ./python </pre> h4. Extra packages for 64 bit installations 64 bit installations require more packages because some uttilities (like adb) are built for 32bit computers. Add the following repository in /etc/pacman.conf: <pre> [libre-multilib] Include = /etc/pacman.d/mirrorlist [multilib] Include = /etc/pacman.d/mirrorlist </pre> Then install the missing dependencies for 64bit: <pre> pacman -Syu pacman -S multilib/lib32-glibc multilib/gcc-multilib multilib/lib32-readline multilib/lib32-ncurses multilib/lib32-zlib </pre> h3. Tweaks * If repo complains about experimental python 3 support, set python 2 as default: <pre> ln -s /usr/bin/python2 /usr/local/bin/python </pre>