Project

General

Profile

BuildDependenciesInstallation » History » Version 51

Loic Dachary, 10/22/2016 08:57 AM
enable i386 packages so that zlib1g-dev:i386 can successfully be installed on debian 8

1 43 Paul Kocialkowski
h1. Build dependencies installation
2 6 Paul Kocialkowski
3 40 Paul Kocialkowski
*Replicant can only be built on 64 bit x86 architectures, building on 32 bit x86 systems is no longer supported.*
4
However, some prebuilt tools are still 32 bit x86 executables and some host tools are generated as 32 bit x86 executables.
5 19 Paul Kocialkowski
6 40 Paul Kocialkowski
h2. Debian-based systems
7 19 Paul Kocialkowski
8 40 Paul Kocialkowski
h3. Trisquel 7.0
9 1 Paul Kocialkowski
10 49 Paul Kocialkowski
Packages installation:
11
12 4 Paul Kocialkowski
<pre>
13 40 Paul Kocialkowski
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
14 39 Paul Kocialkowski
</pre>
15 1 Paul Kocialkowski
16 40 Paul Kocialkowski
h3. Debian 8
17 1 Paul Kocialkowski
18 49 Paul Kocialkowski
Packages installation:
19
20 1 Paul Kocialkowski
<pre>
21 51 Loic Dachary
dpkg --add-architecture i386 ; apt-get update
22 50 Loic Dachary
apt-get install  bison flex git-core gperf libncurses-dev build-essential curl squashfs-tools openjdk-7-jre openjdk-7-jdk pngcrush wget zip zlib1g-dev lzma libxml2-utils libc6-dev-i386 g++-multilib lib32z1-dev lib32readline-gplv2-dev lib32ncurses5-dev zlib1g-dev:i386 curl xsltproc
23 40 Paul Kocialkowski
</pre>
24
25 1 Paul Kocialkowski
h3. Tweaks
26
27 49 Paul Kocialkowski
* If the packages manager complains about @lib32readline5-dev@ being missing, it has to be replaced with @lib32readline-gplv2-dev@ in the command line.
28
* If the @/usr/lib/zconf.h@ header is missing, a symlink has to be created:
29 1 Paul Kocialkowski
<pre>
30 40 Paul Kocialkowski
ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/lib/zconf.h
31 21 Paul Kocialkowski
</pre>
32 49 Paul Kocialkowski
* If errors messages about incompatible library versions are shown, some symlinks have to be created. For instance:
33 19 Paul Kocialkowski
<pre>
34
sudo ln -s /usr/lib32/libstdc++.so.6.0.14 /usr/lib32/libstdc++.so
35 26 Denis 'GNUtoo' Carikli
sudo ln -s /usr/lib32/libz.so.1.2.3.4 /usr/lib32/libz.so
36 1 Paul Kocialkowski
</pre>
37
38 40 Paul Kocialkowski
h2. Arch Linux-based systems
39 26 Denis 'GNUtoo' Carikli
40 40 Paul Kocialkowski
h3. Parabola
41 26 Denis 'GNUtoo' Carikli
42 47 Paul Kocialkowski
Base packages (from the Parabola repositories) installation:
43 7 Denis 'GNUtoo' Carikli
<pre>
44 47 Paul Kocialkowski
pacman -S core/bison core/flex core/make core/ncurses core/xz core/zlib extra/bc extra/git extra/gperf extra/gperftools libre/jdk7-openjdk extra/openjdk7-src libre/jre7-openjdk extra/wget extra/zip community/squashfs-tools community/pngcrush libre/unzip
45 1 Paul Kocialkowski
</pre>
46
47 47 Paul Kocialkowski
Some additional repositories are required to retrieve some of the build dependencies.
48
49
To enable those repositories, the following should be added to @/etc/pacman.conf@:
50 28 Denis 'GNUtoo' Carikli
<pre>
51
[libre-multilib]
52
Include = /etc/pacman.d/mirrorlist
53 39 Paul Kocialkowski
54 29 Denis 'GNUtoo' Carikli
[multilib]
55 1 Paul Kocialkowski
Include = /etc/pacman.d/mirrorlist
56 39 Paul Kocialkowski
</pre>
57 26 Denis 'GNUtoo' Carikli
58 47 Paul Kocialkowski
For these changes to take effect, the packages database should be updated:
59 1 Paul Kocialkowski
<pre>
60
pacman -Syu
61 47 Paul Kocialkowski
</pre>
62
63
Additional packages installation:
64
<pre>
65 37 Denis 'GNUtoo' Carikli
pacman -S multilib/lib32-glibc multilib/gcc-multilib multilib/lib32-readline multilib/lib32-ncurses multilib/lib32-zlib
66 40 Paul Kocialkowski
</pre>
67
68
h3. Tweaks
69
70 48 Paul Kocialkowski
* repo may complain about experimental python 3 support: python 2 has to be set as default instead:
71 40 Paul Kocialkowski
<pre>
72
ln -s /usr/bin/python2 /usr/local/bin/python
73 1 Paul Kocialkowski
</pre>