Mercurial > hg > orthanc
comparison LinuxCompilation.txt @ 2086:630606097798
GNU/Linux
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 16 Sep 2016 09:18:35 +0200 |
parents | e39a2657f1c6 |
children | 741765ec8374 |
comparison
equal
deleted
inserted
replaced
2085:5d4743fd8a85 | 2086:630606097798 |
---|---|
1 This file is a complement to "INSTALL", which contains instructions | 1 This file is a complement to "INSTALL", which contains instructions |
2 that are specific to Linux. | 2 that are specific to GNU/Linux. |
3 | 3 |
4 | 4 |
5 Static linking for Linux | 5 Static linking for GNU/Linux |
6 ======================== | 6 ============================ |
7 | 7 |
8 The most simple way of building Orthanc under Linux consists in | 8 The most simple way of building Orthanc under GNU/Linux consists in |
9 statically linking against all the third-party dependencies. In this | 9 statically linking against all the third-party dependencies. In this |
10 case, the system-wide libraries will not be used. The build tool | 10 case, the system-wide libraries will not be used. The build tool |
11 (CMake) will download the sources of all the required packages and | 11 (CMake) will download the sources of all the required packages and |
12 automatically compile them. | 12 automatically compile them. |
13 | 13 |
14 This process should work on any Linux distribution, provided that a | 14 This process should work on any GNU/Linux distribution, provided that a |
15 C/C++ compiler ("build-essential" in Debian-based systems), the Python | 15 C/C++ compiler ("build-essential" in Debian-based systems), the Python |
16 interpreter, CMake, the "unzip" system tool, and the development | 16 interpreter, CMake, the "unzip" system tool, and the development |
17 package for libuuid ("uuid-dev" in Debian) are installed. | 17 package for libuuid ("uuid-dev" in Debian) are installed. |
18 | 18 |
19 | 19 |
45 then run cmake again. | 45 then run cmake again. |
46 | 46 |
47 Note 3- To build the documentation, you will have to install doxyen. | 47 Note 3- To build the documentation, you will have to install doxyen. |
48 | 48 |
49 | 49 |
50 Use system-wide libraries under Linux | 50 Use system-wide libraries under GNU/Linux |
51 ===================================== | 51 ========================================= |
52 | 52 |
53 Under Linux, by default, Orthanc links against the shared libraries of | 53 Under GNU/Linux, by default, Orthanc links against the shared |
54 your system (the "STATIC_BUILD" option is set to "OFF"). This greatly | 54 libraries of your system (the "STATIC_BUILD" option is set to |
55 speeds up the compilation. This is also required when building | 55 "OFF"). This greatly speeds up the compilation. This is also required |
56 packages for Linux distributions. Because using system libraries is | 56 when building packages for GNU/Linux distributions. Because using |
57 the default behavior, you just have to use: | 57 system libraries is the default behavior, you just have to use: |
58 | 58 |
59 # cd ~/OrthancBuild | 59 # cd ~/OrthancBuild |
60 # cmake -DCMAKE_BUILD_TYPE=Debug ~/Orthanc | 60 # cmake -DCMAKE_BUILD_TYPE=Debug ~/Orthanc |
61 # make | 61 # make |
62 | 62 |
63 Note that to build the documentation, you will have to install doxyen. | 63 Note that to build the documentation, you will have to install doxyen. |
64 | 64 |
65 However, on some Linux distributions, it is still required to download | 65 However, on some GNU/Linux distributions, it is still required to |
66 and static link against some third-party dependencies, e.g. when the | 66 download and static link against some third-party dependencies, |
67 system-wide library is not shipped or is outdated. Because of | 67 e.g. when the system-wide library is not shipped or is |
68 difference in the packaging of the various Linux distribution, it is | 68 outdated. Because of difference in the packaging of the various |
69 also sometimes required to fine-tune some options. | 69 GNU/Linux distribution, it is also sometimes required to fine-tune |
70 | 70 some options. |
71 You will find below build instructions for specific Linux | 71 |
72 You will find below build instructions for specific GNU/Linux | |
72 distributions. Distributions tagged by "SUPPORTED" are tested by | 73 distributions. Distributions tagged by "SUPPORTED" are tested by |
73 Sébastien Jodogne. Distributions tagged by "CONTRIBUTED" come from | 74 Sébastien Jodogne. Distributions tagged by "CONTRIBUTED" come from |
74 Orthanc users. | 75 Orthanc users. |
75 | 76 |
76 | 77 |
181 -DUSE_SYSTEM_LIBJPEG=OFF \ | 182 -DUSE_SYSTEM_LIBJPEG=OFF \ |
182 ~/Orthanc | 183 ~/Orthanc |
183 | 184 |
184 | 185 |
185 | 186 |
186 Other Linux distributions? | 187 Other GNU/Linux distributions? |
187 -------------------------- | 188 ------------------------------ |
188 | 189 |
189 Please send us your build instructions (by a mail to | 190 Please send us your build instructions (by a mail to |
190 s.jodogne@gmail.com)! | 191 s.jodogne@gmail.com)! |
191 | 192 |
192 You can find build instructions for Orthanc up to 0.7.0 on the | 193 You can find build instructions for Orthanc up to 0.7.0 on the |
200 | 201 |
201 | 202 |
202 Using ccache | 203 Using ccache |
203 ============ | 204 ============ |
204 | 205 |
205 Under Linux, you also have the opportunity to use "ccache" to | 206 Under GNU/Linux, you also have the opportunity to use "ccache" to |
206 dramatically decrease the compilation time when rebuilding | 207 dramatically decrease the compilation time when rebuilding |
207 Orthanc. This is especially useful for developers. To this end, you | 208 Orthanc. This is especially useful for developers. To this end, you |
208 would use: | 209 would use: |
209 | 210 |
210 # CC="ccache gcc" CXX="ccache g++" cmake ~/Orthanc [Other Options] | 211 # CC="ccache gcc" CXX="ccache g++" cmake ~/Orthanc [Other Options] |