Mercurial > hg > orthanc
annotate INSTALL @ 2518:63d2cc0fb40a
refactoring
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 29 Mar 2018 14:41:41 +0200 |
parents | a4f885670da7 |
children | 83489e20ad0c |
rev | line source |
---|---|
57 | 1 Orthanc - A Lightweight, RESTful DICOM Server |
2 ============================================= | |
2 | 3 |
4 | |
5 Dependencies | |
6 ------------ | |
7 | |
57 | 8 1) CMake: Orthanc uses CMake (http://www.cmake.org/) to automate its |
9 building process. | |
7 | 10 |
11 2) Python: Some code is autogenerated through Python | |
12 (http://www.python.org/). | |
2 | 13 |
7 | 14 3) Mercurial: To use the cutting edge code, a Mercurial client must be |
15 installed (http://mercurial.selenic.com/). We recommand TortoiseHg. | |
16 | |
17 W) 7-Zip: For the native build under Windows, the 7-Zip tool is used | |
18 to uncompress the third-party packages (http://www.7-zip.org/). | |
19 | |
20 You thus have to download and install CMake, Python, Mercurial and | |
21 possibly 7-Zip first. The path to their executable must be in the | |
22 "PATH" environment variable. | |
2 | 23 |
24 The other third party dependencies are automatically downloaded by the | |
25 CMake scripts. The downloaded packages are stored in the | |
26 "ThirdPartyDownloads" directory. | |
27 | |
28 | |
57 | 29 Building Orthanc at a glance |
30 ---------------------------- | |
2 | 31 |
57 | 32 To build Orthanc, you must: |
2 | 33 |
34 1) Download the source code (either using Mercurial, or through the | |
1451 | 35 official releases). For the examples below, we assume the source |
57 | 36 directory is "~/Orthanc". |
2 | 37 |
38 2) Create a build directory. For the examples below, we assume the | |
57 | 39 build directory is "~/OrthancBuild". |
2 | 40 |
1451 | 41 3) Depending on your platform, follow the build instructions below. |
42 | |
43 | |
1502
5e9c40419fb9
Upgrade to JsonCpp 0.10.5 for static and Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1451
diff
changeset
|
44 WARNING 1: If you do not create a fresh "~/OrthancBuild" directory |
5e9c40419fb9
Upgrade to JsonCpp 0.10.5 for static and Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1451
diff
changeset
|
45 after upgrading the source code (i.e. if you reuse the build directory |
5e9c40419fb9
Upgrade to JsonCpp 0.10.5 for static and Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1451
diff
changeset
|
46 that was used to build a different version of Orthanc), the build |
5e9c40419fb9
Upgrade to JsonCpp 0.10.5 for static and Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1451
diff
changeset
|
47 might fail because of changes in the compilation/linking flags. Always |
1451 | 48 prefer to force a re-build in a new directory. |
49 | |
1502
5e9c40419fb9
Upgrade to JsonCpp 0.10.5 for static and Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1451
diff
changeset
|
50 WARNING 2: If cmake complains about not being able to uncompress |
5e9c40419fb9
Upgrade to JsonCpp 0.10.5 for static and Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1451
diff
changeset
|
51 third-party dependencies, delete the "~/Orthanc/ThirdPartyDownloads/" |
5e9c40419fb9
Upgrade to JsonCpp 0.10.5 for static and Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1451
diff
changeset
|
52 folder, then restart cmake. |
2 | 53 |
2086 | 54 WARNING 3: If performance is important to you, make sure to add the |
55 option "-DCMAKE_BUILD_TYPE=Release" when invoking cmake. Indeed, by | |
56 default, run-time debug assertions are enabled, which can seriously | |
57 impact performance, especially if your Orthanc server stores a lot of | |
58 DICOM instances. | |
2 | 59 |
2086 | 60 |
61 Native GNU/Linux Compilation | |
62 ---------------------------- | |
2 | 63 |
634 | 64 See the file "LinuxCompilation.txt". |
2 | 65 |
287
471df5fecb1e
simplification to cmake for dcmtk
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
74
diff
changeset
|
66 |
936
9c7f5fd8a7a2
build instructions for Mac OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
870
diff
changeset
|
67 Native OS X Compilation |
9c7f5fd8a7a2
build instructions for Mac OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
870
diff
changeset
|
68 ----------------------- |
9c7f5fd8a7a2
build instructions for Mac OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
870
diff
changeset
|
69 |
9c7f5fd8a7a2
build instructions for Mac OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
870
diff
changeset
|
70 See the file "DarwinCompilation.txt". |
9c7f5fd8a7a2
build instructions for Mac OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
870
diff
changeset
|
71 |
9c7f5fd8a7a2
build instructions for Mac OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
870
diff
changeset
|
72 |
9c7f5fd8a7a2
build instructions for Mac OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
870
diff
changeset
|
73 |
1117
3b27b83d7247
ALLOW_DOWNLOADS for Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1046
diff
changeset
|
74 Native Windows build with Microsoft Visual Studio |
3b27b83d7247
ALLOW_DOWNLOADS for Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1046
diff
changeset
|
75 ------------------------------------------------- |
385 | 76 |
77 # cd [...]\OrthancBuild | |
2505 | 78 # cmake -DSTANDALONE_BUILD=ON -DSTATIC_BUILD=ON -DALLOW_DOWNLOADS=ON -DUSE_LEGACY_JSONCPP=ON -G "Visual Studio 9 2008" [...]\Orthanc |
385 | 79 |
80 Then open the "[...]/OrthancBuild/Orthanc.sln" with Visual Studio. | |
81 | |
82 NOTES: | |
2497
0611aa383e62
Upgrade to JsonCpp 1.8.4, and USE_LEGACY_JSONCPP option
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2086
diff
changeset
|
83 * More recent versions of Visual Studio than 2008 should also |
1117
3b27b83d7247
ALLOW_DOWNLOADS for Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1046
diff
changeset
|
84 work. Type "cmake" without arguments to have the list of generators |
3b27b83d7247
ALLOW_DOWNLOADS for Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1046
diff
changeset
|
85 that are available on your computer. |
385 | 86 * You will have to install the Platform SDK (version 6 or above) for |
87 Visual Studio 2005: | |
88 http://en.wikipedia.org/wiki/Microsoft_Windows_SDK. | |
89 Read the CMake FAQ: http://goo.gl/By90B | |
2497
0611aa383e62
Upgrade to JsonCpp 1.8.4, and USE_LEGACY_JSONCPP option
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2086
diff
changeset
|
90 * The "-DUSE_LEGACY_JSONCPP=ON" must be set for versions of |
0611aa383e62
Upgrade to JsonCpp 1.8.4, and USE_LEGACY_JSONCPP option
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2086
diff
changeset
|
91 Visual Studio that do not support C++11 |
385 | 92 |
93 | |
94 | |
2086 | 95 Cross-Compilation for Windows under GNU/Linux |
96 --------------------------------------------- | |
2 | 97 |
98 To cross-compile Windows binaries under Linux using MinGW, please use | |
99 the following command: | |
100 | |
57 | 101 # cd ~/OrthancBuild |
870 | 102 # cmake -DCMAKE_TOOLCHAIN_FILE=~/Orthanc/Resources/MinGWToolchain.cmake -DSTATIC_BUILD=ON -DSTANDALONE_BUILD=ON -DCMAKE_BUILD_TYPE=Debug ~/Orthanc |
2 | 103 # make |
104 | |
105 | |
106 | |
7 | 107 Native Windows build with MinGW (VERY SLOW) |
13
7908a4c25a18
preparation for release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
7
diff
changeset
|
108 ------------------------------------------- |
2 | 109 |
57 | 110 # cd [...]\OrthancBuild |
292 | 111 # cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug [...]\Orthanc |
2 | 112 # mingw32-make |