Mercurial > trustbridge
annotate INSTALL @ 975:b3695a3399de
(issue86) Install into default directories on Linux
If the mozilla process is now started as root it will
try to write into the default directories for NSS Shared
and mozilla / thunderbird profiles.
Cinst will now start the mozilla process once as root.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Fri, 29 Aug 2014 12:59:44 +0200 |
parents | d3258a6faedd |
children | 0570b1e562c2 |
rev | line source |
---|---|
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
1 Installation Instructions |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
2 ************************* |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
3 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
4 For Debian based GNU / Linux |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
5 ============================ |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
6 Tested development platform: Ubuntu 14.4 amd64. |
598
c1733da2559c
Added hint about tested development platform Ubuntu 13.10.
Bernhard Reiter <bernhard@intevation.de>
parents:
585
diff
changeset
|
7 |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
8 The following commands build qt5 and polarssl which are dependencies of the Software. |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
9 To only build for the amd64 platform omit the i386 instructions. |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
10 |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
11 For build dependencies please refer to the Qt documentation |
598
c1733da2559c
Added hint about tested development platform Ubuntu 13.10.
Bernhard Reiter <bernhard@intevation.de>
parents:
585
diff
changeset
|
12 ( qtbase/src/plugins/platforms/xcb/README ). |
c1733da2559c
Added hint about tested development platform Ubuntu 13.10.
Bernhard Reiter <bernhard@intevation.de>
parents:
585
diff
changeset
|
13 Polarssl needs cmake and build-essentials. |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
14 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
15 export YOURPREFIX=<Prefix of your choice (default /usr)> |
577
4ccae6acfaec
Document qt linguist tools build
Andre Heinecke <aheinecke@intevation.de>
parents:
575
diff
changeset
|
16 export PATH=$YOURPREFIX/bin:$PATH |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
17 |
778
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
18 curl https://download.qt-project.org/official_releases/qt/5.3/5.3.1/single/qt-everywhere-opensource-src-5.3.1.tar.xz.mirrorlist | grep SHA-256 |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
19 |
778
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
20 29d2ab3b1aef87e2dd806b278802e357274016475a513341348040468bf233ac |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
21 |
778
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
22 http://qt-mirror.dannhauer.de/official_releases/qt/5.3/5.3.1/single/qt-everywhere-opensource-src-5.3.1.tar.xz |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
23 |
778
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
24 sha256sum qt-everywhere-opensource-src-5.3.1.tar.xz |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
25 |
778
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
26 tar -xf qt-everywhere-opensource-src-5.3.1.tar.xz |
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
27 |
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
28 cd qt-everywhere-opensource-src-5.3.1/qtbase |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
29 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
30 build dependencies have to to be installed at this point, |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
31 see ../qtbase/src/plugins/platforms/xcb/README |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
32 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
33 ./configure --prefix=$YOURPREFIX \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
34 -opensource \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
35 -release -nomake tests -nomake examples -confirm-license \ |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
36 -static -no-cups -no-nis -no-icu -no-fontconfig -qt-freetype \ |
778
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
37 -no-directfb -no-opengl -no-kms -no-eglfs -no-egl -no-openssl -no-glib \ |
931
7ac5a366184d
Remove -system-lipng from qt configure line
Andre Heinecke <andre.heinecke@intevation.de>
parents:
908
diff
changeset
|
38 -qpa xcb -qt-xkbcommon -qt-xcb -no-nis -no-libjpeg -qt-libpng \ |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
39 -qt-zlib -no-gif && \ |
887
accda55ae053
Use make -j`nproc` everywhere instead of fixed number
Andre Heinecke <andre.heinecke@intevation.de>
parents:
880
diff
changeset
|
40 nice make -j`nproc` && \ |
666
d905758aa3a6
Some reduction in qt libraries and document uitools build (needed for linguist)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
635
diff
changeset
|
41 make install |
d905758aa3a6
Some reduction in qt libraries and document uitools build (needed for linguist)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
635
diff
changeset
|
42 |
784
d92264e9e08f
Improve copy/paste variant of INSTALL documentation by switching paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
778
diff
changeset
|
43 cd .. && \ |
d92264e9e08f
Improve copy/paste variant of INSTALL documentation by switching paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
778
diff
changeset
|
44 cd qttools/src/designer/src/uitools && \ |
778
3145399aa797
(issue57) Update to qt 5.3.1
Andre Heinecke <andre.heinecke@intevation.de>
parents:
666
diff
changeset
|
45 qmake && \ |
887
accda55ae053
Use make -j`nproc` everywhere instead of fixed number
Andre Heinecke <andre.heinecke@intevation.de>
parents:
880
diff
changeset
|
46 nice make -j`nproc` && \ |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
47 make install |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
48 |
784
d92264e9e08f
Improve copy/paste variant of INSTALL documentation by switching paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
778
diff
changeset
|
49 cd ../../../linguist && \ |
d92264e9e08f
Improve copy/paste variant of INSTALL documentation by switching paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
778
diff
changeset
|
50 qmake && \ |
887
accda55ae053
Use make -j`nproc` everywhere instead of fixed number
Andre Heinecke <andre.heinecke@intevation.de>
parents:
880
diff
changeset
|
51 nice make -j`nproc` &&\ |
666
d905758aa3a6
Some reduction in qt libraries and document uitools build (needed for linguist)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
635
diff
changeset
|
52 make install |
577
4ccae6acfaec
Document qt linguist tools build
Andre Heinecke <aheinecke@intevation.de>
parents:
575
diff
changeset
|
53 |
823
b8bc812e41ee
(issue69) Update polarssl build documentation to 1.3.8
Andre Heinecke <andre.heinecke@intevation.de>
parents:
789
diff
changeset
|
54 curl -O https://polarssl.org/download/polarssl-1.3.8-gpl.tgz |
b8bc812e41ee
(issue69) Update polarssl build documentation to 1.3.8
Andre Heinecke <andre.heinecke@intevation.de>
parents:
789
diff
changeset
|
55 318171db41335cacbb5b0047c94f1faf91442ab70a223b5223436703c9406ff1 polarssl-1.3.8-gpl.tgz |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
56 |
823
b8bc812e41ee
(issue69) Update polarssl build documentation to 1.3.8
Andre Heinecke <andre.heinecke@intevation.de>
parents:
789
diff
changeset
|
57 tar -xf polarssl-1.3.8-gpl.tgz |
b8bc812e41ee
(issue69) Update polarssl build documentation to 1.3.8
Andre Heinecke <andre.heinecke@intevation.de>
parents:
789
diff
changeset
|
58 cd polarssl-1.3.8 |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
59 mkdir build |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
60 cd build |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
61 cmake .. -DCMAKE_C_FLAGS=-fpic -DCMAKE_INSTALL_PREFIX=$YOURPREFIX |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
62 make && make test && make install |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
63 |
908
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
64 Libcurl: |
960
64c0e15935c8
Just add the sha256sum instead of gpg verify to avoid trust issues.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
958
diff
changeset
|
65 wget http://curl.haxx.se/download/curl-7.37.1.tar.gz |
64c0e15935c8
Just add the sha256sum instead of gpg verify to avoid trust issues.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
958
diff
changeset
|
66 a32492a38c10a097344892f5fd2041e54698cb909696852311b1161e4aa979f3 curl-7.37.1.tar.gz |
64c0e15935c8
Just add the sha256sum instead of gpg verify to avoid trust issues.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
958
diff
changeset
|
67 |
908
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
68 tar -xf curl-7.37.1.tar.gz |
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
69 cd curl-7.37.1/ |
971
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
70 mkdir build |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
71 cd build |
908
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
72 |
971
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
73 ../configure --prefix=$YOURPREFIX \ |
908
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
74 --without-nghttp2 --without-libidn --without-winidn --without-libssh2 \ |
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
75 --without-librtmp --without-libmetalink --without-axtls --without-nss \ |
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
76 --without-cyassl --without-ssl --without-gnutls --disable-gopher --disable-smtp \ |
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
77 --disable-imap --disable-pop3 --disable-tftp --disable-telnet --disable-dict \ |
953
f2066a24047d
Update build doc for curl. Do not disable proxy.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
949
diff
changeset
|
78 --disable-rtsp --disable-ldaps --disable-ldap --disable-file \ |
908
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
79 --disable-ftp --enable-http --enable-shared=no -enable-static=yes \ |
948
3baee3445502
Use curl without-zlib support
Andre Heinecke <andre.heinecke@intevation.de>
parents:
931
diff
changeset
|
80 --with-polarssl=$YOURPREFIX --without-ca-bundle --without-ca-path \ |
3baee3445502
Use curl without-zlib support
Andre Heinecke <andre.heinecke@intevation.de>
parents:
931
diff
changeset
|
81 --without-zlib |
953
f2066a24047d
Update build doc for curl. Do not disable proxy.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
949
diff
changeset
|
82 make && make install |
908
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
888
diff
changeset
|
83 |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
84 To compile the software you can use plain cmake. An out of source build is |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
85 highly suggested. For build options see CMakeList.txt |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
86 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
87 hg clone https://wald.intevation.org/hg/trustbridge/ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
88 cd trustbridge |
834
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
823
diff
changeset
|
89 hg clone https://wald.intevation.org/hg/trustbridge/nss-cmake-static |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
90 mkdir build-linux |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
91 cd build-linux |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
92 cmake .. -DCMAKE_PREFIX_PATH=$YOURPREFIX |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
93 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
94 |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
95 I386 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
96 ==== |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
97 Install dependencies (list might be incomplete) |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
98 apt-get install libx32stdc++-4.8-dev libc6:i386 g++-4.8-multilib \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
99 libxcb1:i386 libxcb1-dev:i386 libx11-xcb1:i386 libx11-xcb-dev:i386 libxcb-keysyms1:i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
100 libxcb-keysyms1-dev:i386 libxcb-image0:i386 libxcb-image0-dev:i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
101 libxcb-shm0:i386 libxcb-shm0-dev:i386 libxcb-icccm4:i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
102 libxcb-icccm4-dev:i386 libxcb-sync-dev:i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
103 libxcb-render-util0:i386 libxcb-render-util0-dev:i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
104 libxcb-xfixes0-dev:i386 libxrender-dev:i386 libxcb-shape0-dev:i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
105 libxcb-randr0-dev:i386 libxcb-glx0-dev:i386 libdbus-1-dev:i386 \ |
888
be3cb357b027
Document libnss3:i386 dependendcy
Andre Heinecke <andre.heinecke@intevation.de>
parents:
887
diff
changeset
|
106 libsm-dev:i386 libnss3-dev:i386 |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
107 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
108 Create a new directory for qt. As qt has to build in source you need a different |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
109 directory. |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
110 mkdir i386 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
111 cd i386 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
112 tar -xf ../qt-everywhere-opensource-src-5.3.1.tar.xz |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
113 cd qt-everywhere-opensource-src-5.3.1/qtbase/ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
114 ./configure --prefix=$YOURPREFIX/i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
115 -opensource -platform linux-g++-32 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
116 -release -nomake tests -nomake examples -confirm-license \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
117 -static -no-cups -no-nis -no-icu \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
118 -no-directfb -no-opengl -no-kms -no-eglfs -no-egl -no-openssl -no-glib \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
119 -system-libpng -qpa xcb -qt-xcb -no-nis -no-libjpeg -no-gif -qt-zlib \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
120 -no-fontconfig -qt-freetype -qt-libpng -qt-xkbcommon \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
121 && \ |
887
accda55ae053
Use make -j`nproc` everywhere instead of fixed number
Andre Heinecke <andre.heinecke@intevation.de>
parents:
880
diff
changeset
|
122 nice make -j`nproc` && \ |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
123 make install |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
124 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
125 Switch back to the polarssl directory |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
126 cd ../../../polarssl-1.3.8/ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
127 mkdir build-i386 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
128 cd build-i386 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
129 cmake .. -DCMAKE_C_FLAGS="-fpic -m32" -DCMAKE_INSTALL_PREFIX=$YOURPREFIX/i386 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
130 -DCMAKE_VERBOSE_MAKEFILE=True \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
131 -DENABLE_TESTING=FALSE -DENABLE_PROGRAMS=FALSE && \ |
887
accda55ae053
Use make -j`nproc` everywhere instead of fixed number
Andre Heinecke <andre.heinecke@intevation.de>
parents:
880
diff
changeset
|
132 nice make -j`nproc` && \ |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
133 make install |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
134 |
971
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
135 Change to the curl directory |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
136 cd ../../curl-7.37.1/ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
137 mkdir build-i386 |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
138 cd build-i386 |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
139 CFLAGS="-fpic -m32" CPPFLAGS="-fpic -m32" ../configure --prefix=$YOURPREFIX/i386 \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
140 --without-nghttp2 --without-libidn --without-winidn --without-libssh2 \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
141 --without-librtmp --without-libmetalink --without-axtls --without-nss \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
142 --without-cyassl --without-ssl --without-gnutls --disable-gopher --disable-smtp \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
143 --disable-imap --disable-pop3 --disable-tftp --disable-telnet --disable-dict \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
144 --disable-rtsp --disable-ldaps --disable-ldap --disable-file \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
145 --disable-ftp --enable-http --enable-shared=no -enable-static=yes \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
146 --with-polarssl=$YOURPREFIX/i386 --without-ca-bundle --without-ca-path \ |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
147 --without-zlib |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
148 make && make install |
d3258a6faedd
Document out of source and i386 build for curl
Andre Heinecke <andre.heinecke@intevation.de>
parents:
960
diff
changeset
|
149 |
876
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
150 Now for Trustbridge itself |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
151 cd ../../trustbridge |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
152 mkdir build-i386 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
153 cd build-i386 |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
154 cmake .. -DCMAKE_PREFIX_PATH="$YOURPREFIX/i386" \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
155 -DCMAKE_VERBOSE_MAKEFILE=True \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
156 -DCMAKE_C_FLAGS=-m32 \ |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
157 -DCMAKE_CXX_FLAGS="-m32" |
0051cb07da28
Reduce libraries, document i386 build and statically link fonts.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
855
diff
changeset
|
158 |
585
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
159 Hiawatha (for Downloader unit test) |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
160 =================================== |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
161 Hiawatha is used in the downloader unit tests to provide a testbench |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
162 for the ssl connection. To build it you may need libxslt-dev as additional |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
163 dependency. |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
164 |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
165 wget https://www.hiawatha-webserver.org/files/hiawatha-9.5.tar.gz |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
166 sha256sum hiawatha-9.5.tar.gz |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
167 |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
168 c181011db1af187006190fc186689a0707a6f1e7b524c2a4347840e8fdf68b4f hiawatha-9.5.tar.gz |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
169 |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
170 tar -xf hiawatha-9.5.tar.gz |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
171 cp polarssl-1.3.7-gpl.tgz hiawatha-9.5/polarssl/polarssl.tgz |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
172 cd hiawatha-9.5/polarssl |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
173 sed -i 's/wget.*//' upgrade |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
174 ./upgrade 1.3.7 |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
175 cd .. |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
176 mkdir build |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
177 cd build |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
178 cmake .. -DCMAKE_INSTALL_PREFIX=$YOURPREFIX |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
179 make && make install |
21f8d32f2d2a
Document hiawatha build
Andre Heinecke <aheinecke@intevation.de>
parents:
577
diff
changeset
|
180 |
635
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
181 Osslsigncode (for binverify unit test) |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
182 ====================================== |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
183 Osslsigncode is used to create PKCS#7 embedded signatures for Windows Authenticode |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
184 it is needed for the Windows part of the binverify unit test on the build system. |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
185 |
847
b642e80c77a8
Switch to released version of osslsigncode
Andre Heinecke <andre.heinecke@intevation.de>
parents:
836
diff
changeset
|
186 wget http://downloads.sourceforge.net/project/osslsigncode/osslsigncode/osslsigncode-1.7.1.tar.gz |
b642e80c77a8
Switch to released version of osslsigncode
Andre Heinecke <andre.heinecke@intevation.de>
parents:
836
diff
changeset
|
187 sha256sum osslsigncode-1.7.1.tar.gz |
b642e80c77a8
Switch to released version of osslsigncode
Andre Heinecke <andre.heinecke@intevation.de>
parents:
836
diff
changeset
|
188 # f9a8cdb38b9c309326764ebc937cba1523a3a751a7ab05df3ecc99d18ae466c9 |
b642e80c77a8
Switch to released version of osslsigncode
Andre Heinecke <andre.heinecke@intevation.de>
parents:
836
diff
changeset
|
189 tar -xf osslsigncode-1.7.1.tar.gz |
b642e80c77a8
Switch to released version of osslsigncode
Andre Heinecke <andre.heinecke@intevation.de>
parents:
836
diff
changeset
|
190 cd osslsigncode-1.7.1 |
b642e80c77a8
Switch to released version of osslsigncode
Andre Heinecke <andre.heinecke@intevation.de>
parents:
836
diff
changeset
|
191 ./configure --without-curl --prefix=$YOURPREFIX |
635
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
192 make && make install |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
193 |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
194 # for a windows binary (optional) |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
195 OPENSSL_CFLAGS=-I$MXETARGET/include OPENSSL_LIBS="-L$MXETARGET/lib -lcrypto -lz -lgdi32" ./configure --without-curl --host=i686-w64-mingw32 --prefix=$MXETARGET |
ed1887be5170
Document osslsigncode build
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
196 |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
197 For Microsoft Windows |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
198 ===================== |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
199 The Windows variant can be cross compiled on Debian based GNU / Linux systems. |
598
c1733da2559c
Added hint about tested development platform Ubuntu 13.10.
Bernhard Reiter <bernhard@intevation.de>
parents:
585
diff
changeset
|
200 The minimum requirement is Debian stable. |
c1733da2559c
Added hint about tested development platform Ubuntu 13.10.
Bernhard Reiter <bernhard@intevation.de>
parents:
585
diff
changeset
|
201 Tested development platform: Ubuntu 13.10. |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
202 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
203 Dependencies on the Host system: |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
204 git autoconf automake bash bison bzip2 \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
205 cmake flex gettext git g++ intltool \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
206 libffi-dev libtool libltdl-dev libssl-dev \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
207 libxml-parser-perl make openssl patch perl \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
208 pkg-config scons sed unzip wget xz-utils autopoint \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
209 gperf |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
210 |
577
4ccae6acfaec
Document qt linguist tools build
Andre Heinecke <aheinecke@intevation.de>
parents:
575
diff
changeset
|
211 Build the windows binaries: |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
212 MXEPATH=$YOURPREFIX/win |
949
0abacb0fd564
Document and use minimized qt and document curl build for windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
948
diff
changeset
|
213 git clone https://github.com/Intevation/mxe.git $MXEPATH |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
214 cd $MXEPATH |
958
3b736de02df3
Add correct branch to INSTALL documentation
Andre Heinecke <andre.heinecke@intevation.de>
parents:
953
diff
changeset
|
215 git checkout trustbridge |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
216 echo "MXE_TARGETS := i686-w64-mingw32.static" > settings.mk |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
217 make polarssl |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
218 make qtbase |
949
0abacb0fd564
Document and use minimized qt and document curl build for windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
948
diff
changeset
|
219 (optional) make curl |
575
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
220 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
221 Workaround Qt CMake Bugs: |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
222 find $MXEPATH/usr/i686-w64-mingw32.static/qt5/lib/cmake -name \*.cmake | \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
223 xargs sed -i 's/\/\([a-z]*\)\.lib/\/lib\1\.a/g' |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
224 sed -i 's/^_qt5gui_find_extra_libs.*//' \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
225 $MXEPATH/usr/i686-w64-mingw32.static/qt5/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
226 |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
227 Compile the software: |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
228 cd trustbridge |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
229 mkdir build-windows |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
230 cd build-windows |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
231 MXETARGET=$MXEPATH/usr/i686-w64-mingw32.static/ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
232 cmake .. \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
233 -DCMAKE_PREFIX_PATH="$MXETARGET/qt5;$MXETARGET;" \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
234 -DCMAKE_TOOLCHAIN_FILE="$MXETARGET/share/cmake/mxe-conf.cmake" \ |
ab2d62fe2815
Add build documentation
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
235 -DCMAKE_VERBOSE_MAKEFILE=True |
848
9792c69201c2
Add note about runtime dependencies for admin tool
Andre Heinecke <andre.heinecke@intevation.de>
parents:
847
diff
changeset
|
236 |
9792c69201c2
Add note about runtime dependencies for admin tool
Andre Heinecke <andre.heinecke@intevation.de>
parents:
847
diff
changeset
|
237 Runtime Depdendencies |
9792c69201c2
Add note about runtime dependencies for admin tool
Andre Heinecke <andre.heinecke@intevation.de>
parents:
847
diff
changeset
|
238 ===================== |
9792c69201c2
Add note about runtime dependencies for admin tool
Andre Heinecke <andre.heinecke@intevation.de>
parents:
847
diff
changeset
|
239 The Admin tool needs some additional software to be able to create installtion |
9792c69201c2
Add note about runtime dependencies for admin tool
Andre Heinecke <andre.heinecke@intevation.de>
parents:
847
diff
changeset
|
240 packages: |
9792c69201c2
Add note about runtime dependencies for admin tool
Andre Heinecke <andre.heinecke@intevation.de>
parents:
847
diff
changeset
|
241 |
9792c69201c2
Add note about runtime dependencies for admin tool
Andre Heinecke <andre.heinecke@intevation.de>
parents:
847
diff
changeset
|
242 apt-get install nsis wine sharutils |