Mercurial > hg > orthanc
annotate INSTALL @ 3771:74889e6f6d68
fix memory issues if parsing invalid DICOM file
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 17 Mar 2020 19:19:48 +0100 |
parents | 732922e48937 |
children | 19a2f1d2b816 |
rev | line source |
---|---|
3373
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
1 Orthanc - A Lightweight, RESTful DICOM Server |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
2 ============================================= |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
3 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
4 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
5 Dependencies |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
6 ------------ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
7 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
8 1) CMake: Orthanc uses CMake (http://www.cmake.org/) to automate its |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
9 building process. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
10 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
11 2) Python: Some code is autogenerated through Python |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
12 (http://www.python.org/). |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
13 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
14 3) Mercurial: To use the cutting edge code, a Mercurial client must be |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
15 installed (http://mercurial.selenic.com/). We recommend TortoiseHg. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
16 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
17 W) 7-Zip: For the native build under Windows, the 7-Zip tool is used |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
18 to uncompress the third-party packages (http://www.7-zip.org/). |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
19 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
20 You thus have to download and install CMake, Python, Mercurial and |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
21 possibly 7-Zip first. The path to their executable must be in the |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
22 "PATH" environment variable. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
23 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
24 The other third party dependencies are automatically downloaded by the |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
25 CMake scripts. The downloaded packages are stored in the |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
26 "ThirdPartyDownloads" directory. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
27 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
28 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
29 Building Orthanc at a glance |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
30 ---------------------------- |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
31 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
32 To build Orthanc, you must: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
33 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
34 1) Download the source code (either using Mercurial, or through the |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
35 official releases). For the examples below, we assume the source |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
36 directory is "~/Orthanc". |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
37 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
38 2) Create a build directory. For the examples below, we assume the |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
39 build directory is "~/OrthancBuild". |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
40 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
41 3) Depending on your platform, follow the build instructions below. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
42 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
43 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
44 WARNING 1: If you do not create a fresh "~/OrthancBuild" directory |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
45 after upgrading the source code (i.e. if you reuse the build directory |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
46 that was used to build a different version of Orthanc), the build |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
47 might fail because of changes in the compilation/linking flags. Always |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
48 prefer to force a re-build in a new directory. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
49 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
50 WARNING 2: If cmake complains about not being able to uncompress |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
51 third-party dependencies, delete the "~/Orthanc/ThirdPartyDownloads/" |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
52 folder, then restart cmake. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
53 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
54 WARNING 3: If performance is important to you, make sure to add the |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
55 option "-DCMAKE_BUILD_TYPE=Release" when invoking cmake. Indeed, by |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
56 default, run-time debug assertions are enabled, which can seriously |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
57 impact performance, especially if your Orthanc server stores a lot of |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
58 DICOM instances. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
59 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
60 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
61 Native GNU/Linux Compilation |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
62 ---------------------------- |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
63 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
64 See the file "LinuxCompilation.txt". |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
65 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
66 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
67 Native OS X Compilation |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
68 ----------------------- |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
69 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
70 See the file "DarwinCompilation.txt". |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
71 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
72 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
73 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
74 Native Windows build with Microsoft Visual Studio 2008 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
75 ------------------------------------------------------ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
76 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
77 # cd [...]\OrthancBuild |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
78 # cmake -DSTANDALONE_BUILD=ON -DSTATIC_BUILD=ON -DALLOW_DOWNLOADS=ON \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
79 -DUSE_LEGACY_JSONCPP=ON -G "Visual Studio 9 2008" [...]\Orthanc |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
80 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
81 Then open the "[...]/OrthancBuild/Orthanc.sln" with Visual Studio. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
82 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
83 NOTES: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
84 * More recent versions of Visual Studio than 2008 should also |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
85 work. Type "cmake" without arguments to have the list of generators |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
86 that are available on your computer. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
87 * You will have to install the Platform SDK (version 6 or above) for |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
88 Visual Studio 2005: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
89 http://en.wikipedia.org/wiki/Microsoft_Windows_SDK. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
90 Read the CMake FAQ: http://goo.gl/By90B |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
91 * The "-DUSE_LEGACY_JSONCPP=ON" must be set for versions of |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
92 Visual Studio that do not support C++11 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
93 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
94 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
95 Orthanc as compiled above will not work properly with some Asian |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
96 encodings (unit tests will fail). In international setups, you can |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
97 compile Orthanc together with ICU as follows: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
98 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
99 # cmake -DSTANDALONE_BUILD=ON -DSTATIC_BUILD=ON -DALLOW_DOWNLOADS=ON \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
100 -DBOOST_LOCALE_BACKEND=icu -DUSE_LEGACY_JSONCPP=ON -DUSE_LEGACY_LIBICU=ON \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
101 -G "Visual Studio 9 2008" [...]\Orthanc |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
102 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
103 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
104 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
105 Native Windows build with Microsoft Visual Studio 2015, Ninja and QtCreator |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
106 --------------------------------------------------------------------------- |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
107 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
108 Open a Visual Studio 2015 x64 Command Prompt. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
109 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
110 # cd [...]\OrthancBuild |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
111 # cmake -G Ninja -DSTATIC_BUILD=ON [...]\Orthanc |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
112 # ninja |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
113 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
114 Then, you can open an existing project in QtCreator: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
115 * Select the CMakeLists.txt in [...]\Orthanc |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
116 * Import build from [...]\OrthancBuild |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
117 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
118 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
119 Instructions to include support for Asian encodings: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
120 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
121 # cmake -G Ninja -T host=x64 -DSTATIC_BUILD=ON -DBOOST_LOCALE_BACKEND=icu [...]\Orthanc |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
122 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
123 The option "-T host=x64" is necessary to prevent error "C1060: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
124 compiler is out of heap space" when compiling Orthanc with ICU. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
125 |
3586
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
126 Native 64-bit Windows build with Microsoft Visual Studio 2017 (msbuild) |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
127 ----------------------------------------------------------------------- |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
128 # cd [...]\OrthancBuild |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
129 # cmake -G "Visual Studio 15 2017 Win64" -DMSVC_MULTIPLE_PROCESSES=ON -DSTATIC_BUILD=ON -DOPENSSL_NO_CAPIENG=ON -DALLOW_DOWNLOADS=ON [...]\Orthanc |
3373
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
130 |
3586
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
131 Instructions to include support for Asian encodings: |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
132 # cmake -G "Visual Studio 15 2017 Win64" -T host=x64 -DSTATIC_BUILD=ON -DBOOST_LOCALE_BACKEND=icu -DMSVC_MULTIPLE_PROCESSES=ON -DSTATIC_BUILD=ON -DOPENSSL_NO_CAPIENG=ON -DALLOW_DOWNLOADS=ON [...]\Orthanc |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
133 |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
134 Native 64-bit Windows build with Microsoft Visual Studio 2019 (msbuild) |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
135 ----------------------------------------------------------------------- |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
136 # cd [...]\OrthancBuild |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
137 # cmake -G "Visual Studio 16 2019" -A x64 -DMSVC_MULTIPLE_PROCESSES=ON -DSTATIC_BUILD=ON -DOPENSSL_NO_CAPIENG=ON -DALLOW_DOWNLOADS=ON [...]\Orthanc |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
138 |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
139 Instructions to include support for Asian encodings: |
732922e48937
Added build instructions for MSVC 2017 and 2019
Benjamin Golinvaux <bgo@osimis.io>
parents:
3373
diff
changeset
|
140 # cmake -G "Visual Studio 16 2019" -A x64 -T host=x64 -DSTATIC_BUILD=ON -DBOOST_LOCALE_BACKEND=icu -DMSVC_MULTIPLE_PROCESSES=ON -DSTATIC_BUILD=ON -DOPENSSL_NO_CAPIENG=ON -DALLOW_DOWNLOADS=ON [...]\Orthanc |
3373
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
141 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
142 Cross-Compilation for Windows under GNU/Linux |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
143 --------------------------------------------- |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
144 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
145 Some versions of MinGW-W64 might have problems with C++11 (notably |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
146 those shipped in Ubuntu 16.04 LTS, in the "mingw-w64" package). Use |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
147 the following command to disable C++11: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
148 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
149 # cd ~/OrthancBuild |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
150 # cmake ~/Orthanc \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
151 -DCMAKE_BUILD_TYPE=Debug \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
152 -DCMAKE_TOOLCHAIN_FILE=~/Orthanc/Resources/MinGW-W64-Toolchain32.cmake \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
153 -DSTANDALONE_BUILD=ON \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
154 -DSTATIC_BUILD=ON \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
155 -DUSE_LEGACY_JSONCPP=ON |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
156 # make |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
157 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
158 NB: Use the toolchain "MinGW-W64-Toolchain64.cmake" to produce 64bit |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
159 Windows binaries. |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
160 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
161 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
162 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
163 Legacy MinGW32 compilers (notably those shipped in Ubuntu 14.04 LTS, |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
164 in the "mingw32" package) are incompatible with DCMTK 3.6.2 and |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
165 C++11. Use the following command to force using DCMTK 3.6.0 and |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
166 disable C++11: |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
167 |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
168 # cd ~/OrthancBuild |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
169 # cmake ~/Orthanc \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
170 -DCMAKE_BUILD_TYPE=Debug \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
171 -DCMAKE_TOOLCHAIN_FILE=~/Orthanc/Resources/MinGWToolchain.cmake \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
172 -DSTANDALONE_BUILD=ON \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
173 -DSTATIC_BUILD=ON \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
174 -DDCMTK_STATIC_VERSION=3.6.0 \ |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
175 -DUSE_LEGACY_JSONCPP=ON |
4a8e8a96b233
Fixed CRLF to LF in various files (found through grepping the source tree)
Benjamin Golinvaux <bgo@osimis.io>
parents:
3350
diff
changeset
|
176 # make |