problème installation DCMTK (Dicom)
Bonjour,
Léger remise en contexte sur le pourquoi du comment j'en suis arrivée là. Je suis en stage, j'ai des images aux format DICOM issus d'un tomographe et je me dois de déduire les voxels issus de ces coupes, pour une futur reconstruction 3D. Donc idée générale, récupérer les informations issus du DICOM (si possible le texte et extraire l'image), nettoyer un minimum voir retravailler l'image et de là regarder différent algo. pour en déduire les voxels (je n'ai pas trop regarder la question, j'attends de savoir ce que j'ai dans mes fichiers DICOM) ect.
De ce fait pour la première étape et après quelques recherches, il me semblait pas mal de travailler avec DCMTK, puisque j'ai comme contrainte le multiplateforme et l'open source, et tant qu'à faire je préfère le cpp. Mais là, nous arrivons aux drames ....
J'ai voulu utiliser CodeBlock (10 puis dernière version) sous Windows 7, j'ai suivi l'install donné par DCMTK. Avec le CB 10, j'arrivais à générer le projet importable avec CMake 2.8.10.2 (avec des not-found un peu partout), mais quand je le construisais sous CB, il y avait beaucoup trop d'erreur (à priori manque de lib ou autre).
De ce fait j'ai migré sous la dernière version, là idem mais à priori la version du compilateur avait changé. Du coup reprise à zero et je suis repartie sur CMake. Et là gros mystère, j'ai toujours des erreurs ... Je vous mets les générations, si ça peut aider :
- en premier lieu voici la génération (longue) au premier configure du CMake
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388
|
The C compiler identification is GNU 4.6.2
The CXX compiler identification is GNU 4.6.2
Check for working C compiler: C:/MinGW/bin/gcc.exe
Check for working C compiler: C:/MinGW/bin/gcc.exe -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler: C:/MinGW/bin/g++.exe
Check for working CXX compiler: C:/MinGW/bin/g++.exe -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Warning: PNG support will be disabled because libpng directory was not specified. Correct path and re-enable DCMTK_WITH_PNG.
Warning: TIFF support will be disabled because libtiff directory was not specified. Correct path and re-enable DCMTK_WITH_TIFF.
Warning: ZLIB support will be disabled because zlib directory was not specified. Correct path and re-enable DCMTK_WITH_ZLIB.
Found Doxygen: C:/Program Files/doxygen/bin/doxygen.exe (found version "1.8.3.1")
Info: DCMTK's builtin private dictionary support will be disabled
Info: Thread support will be enabled
Looking for sys/types.h
Looking for sys/types.h - found
Looking for stdint.h
Looking for stdint.h - found
Looking for stddef.h
Looking for stddef.h - found
Check size of char
Check size of char - done
Check size of double
Check size of double - done
Check size of float
Check size of float - done
Check size of int
Check size of int - done
Check size of long
Check size of long - done
Check size of short
Check size of short - done
Check size of void*
Check size of void* - done
Looking for C++ include windows.h
Looking for C++ include windows.h - found
Looking for C++ include winsock.h
Looking for C++ include winsock.h - found
Looking for C++ include errno.h
Looking for C++ include errno.h - found
Looking for C++ include dirent.h
Looking for C++ include dirent.h - found
Looking for C++ include fcntl.h
Looking for C++ include fcntl.h - found
Looking for C++ include fstream
Looking for C++ include fstream - found
Looking for C++ include fstream.h
Looking for C++ include fstream.h - not found
Looking for C++ include fnmatch.h
Looking for C++ include fnmatch.h - not found
Looking for C++ include float.h
Looking for C++ include float.h - found
Looking for C++ include malloc.h
Looking for C++ include malloc.h - found
Looking for C++ include math.h
Looking for C++ include math.h - found
Looking for C++ include ieeefp.h
Looking for C++ include ieeefp.h - not found
Looking for C++ include inttypes.h
Looking for C++ include inttypes.h - found
Looking for C++ include iomanip
Looking for C++ include iomanip - found
Looking for C++ include iomanip.h
Looking for C++ include iomanip.h - not found
Looking for C++ include iostream
Looking for C++ include iostream - found
Looking for C++ include iostream.h
Looking for C++ include iostream.h - not found
Looking for C++ include io.h
Looking for C++ include io.h - found
Looking for C++ include iso646.h
Looking for C++ include iso646.h - found
Looking for C++ include png.h
Looking for C++ include png.h - found
Looking for C++ include limits.h
Looking for C++ include limits.h - found
Looking for C++ include locale.h
Looking for C++ include locale.h - found
Looking for C++ include ndir.h
Looking for C++ include ndir.h - not found
Looking for C++ include netdb.h
Looking for C++ include netdb.h - not found
Looking for C++ include new.h
Looking for C++ include new.h - not found
Looking for C++ include semaphore.h
Looking for C++ include semaphore.h - not found
Looking for C++ include setjmp.h
Looking for C++ include setjmp.h - found
Looking for C++ include sstream
Looking for C++ include sstream - found
Looking for C++ include sstream.h
Looking for C++ include sstream.h - not found
Looking for C++ include stat.h
Looking for C++ include stat.h - not found
Looking for C++ include stdio.h
Looking for C++ include stdio.h - found
Looking for C++ include cstdio
Looking for C++ include cstdio - found
Looking for C++ include strings.h
Looking for C++ include strings.h - found
Looking for C++ include string.h
Looking for C++ include string.h - found
Looking for C++ include strstream.h
Looking for C++ include strstream.h - not found
Looking for C++ include strstream
Looking for C++ include strstream - found
Looking for C++ include strstrea.h
Looking for C++ include strstrea.h - not found
Looking for C++ include synch.h
Looking for C++ include synch.h - not found
Looking for C++ include sys/errno.h
Looking for C++ include sys/errno.h - not found
Looking for C++ include sys/dir.h
Looking for C++ include sys/dir.h - not found
Looking for C++ include sys/file.h
Looking for C++ include sys/file.h - found
Looking for C++ include sys/ndir.h
Looking for C++ include sys/ndir.h - not found
Looking for C++ include sys/param.h
Looking for C++ include sys/param.h - found
Looking for C++ include sys/resource.h
Looking for C++ include sys/resource.h - not found
Looking for C++ include sys/select.h
Looking for C++ include sys/select.h - not found
Looking for C++ include sys/time.h
Looking for C++ include sys/time.h - found
Looking for C++ include sys/utime.h
Looking for C++ include sys/utime.h - found
Looking for C++ include sys/utsname.h
Looking for C++ include sys/utsname.h - not found
Looking for C++ include sys/wait.h
Looking for C++ include sys/wait.h - not found
Looking for C++ include sys/socket.h
Looking for C++ include sys/socket.h - not found
Looking for C++ include thread.h
Looking for C++ include thread.h - not found
Looking for C++ include sys/stat.h
Looking for C++ include sys/stat.h - found
Looking for C++ include time.h
Looking for C++ include time.h - found
Looking for C++ include unistd.h
Looking for C++ include unistd.h - found
Looking for C++ include unix.h
Looking for C++ include unix.h - not found
Looking for C++ include utime.h
Looking for C++ include utime.h - found
Looking for C++ include wctype.h
Looking for C++ include wctype.h - found
Looking for C++ include alloca.h
Looking for C++ include alloca.h - not found
Looking for C++ include arpa/inet.h
Looking for C++ include arpa/inet.h - not found
Looking for C++ include ctype.h
Looking for C++ include ctype.h - found
Looking for C++ include memory.h
Looking for C++ include memory.h - found
Looking for C++ include pthread.h
Looking for C++ include pthread.h - found
Looking for C++ include libc.h
Looking for C++ include libc.h - not found
Looking for C++ include stdlib.h
Looking for C++ include stdlib.h - found
Looking for C++ include stdarg.h
Looking for C++ include stdarg.h - found
Looking for C++ include cstdarg
Looking for C++ include cstdarg - found
Looking for C++ include signal.h
Looking for C++ include signal.h - found
Looking for include files sys/types.h, netinet/in_systm.h
Looking for include files sys/types.h, netinet/in_systm.h - not found
Looking for include files sys/types.h, netinet/in.h
Looking for include files sys/types.h, netinet/in.h - not found
Looking for include files sys/types.h, netinet/tcp.h
Looking for include files sys/types.h, netinet/tcp.h - not found
Looking for connect
Looking for connect - not found
Looking for accept
Looking for accept - not found
Looking for access
Looking for access - found
Looking for bcmp
Looking for bcmp - not found
Looking for bcopy
Looking for bcopy - not found
Looking for bind
Looking for bind - not found
Looking for bzero
Looking for bzero - not found
Looking for cuserid
Looking for cuserid - not found
Looking for vprintf
Looking for vprintf - found
Looking for finite
Looking for finite - found
Looking for _doprnt
Looking for _doprnt - not found
Looking for flock
Looking for flock - not found
Looking for fork
Looking for fork - not found
Looking for getenv
Looking for getenv - found
Looking for geteuid
Looking for geteuid - not found
Looking for gethostbyname
Looking for gethostbyname - not found
Looking for gethostname
Looking for gethostname - not found
Looking for gethostid
Looking for gethostid - not found
Looking for getlogin
Looking for getlogin - not found
Looking for getpid
Looking for getpid - found
Looking for getsockname
Looking for getsockname - not found
Looking for getsockopt
Looking for getsockopt - not found
Looking for getuid
Looking for getuid - not found
Looking for index
Looking for index - not found
Looking for isinf
Looking for isinf - not found
Looking for isnan
Looking for isnan - found
Looking for itoa
Looking for itoa - found
Looking for listen
Looking for listen - not found
Looking for lockf
Looking for lockf - not found
Looking for malloc_debug
Looking for malloc_debug - not found
Looking for memcmp
Looking for memcmp - found
Looking for memcpy
Looking for memcpy - found
Looking for memmove
Looking for memmove - found
Looking for memset
Looking for memset - found
Looking for mkstemp
Looking for mkstemp - not found
Looking for mktemp
Looking for mktemp - found
Looking for rindex
Looking for rindex - not found
Looking for select
Looking for select - not found
Looking for setsockopt
Looking for setsockopt - not found
Looking for setuid
Looking for setuid - not found
Looking for sleep
Looking for sleep - not found
Looking for socket
Looking for socket - not found
Looking for stat
Looking for stat - found
Looking for strchr
Looking for strchr - found
Looking for strdup
Looking for strdup - found
Looking for strerror
Looking for strerror - found
Looking for strlcat
Looking for strlcat - not found
Looking for strlcpy
Looking for strlcpy - not found
Looking for strstr
Looking for strstr - found
Looking for strtoul
Looking for strtoul - found
Looking for sysinfo
Looking for sysinfo - not found
Looking for tempnam
Looking for tempnam - found
Looking for tmpnam
Looking for tmpnam - found
Looking for uname
Looking for uname - not found
Looking for usleep
Looking for usleep - found
Looking for waitpid
Looking for waitpid - not found
Looking for _findfirst
Looking for _findfirst - found
Looking for isinf
Looking for isinf - not found.
Looking for isnan
Looking for isnan - not found.
Looking for finite
Looking for finite - found
Looking for flock
Looking for flock - not found.
Looking for gethostbyname
Looking for gethostbyname - found
Looking for gethostid
Looking for gethostid - not found.
Looking for bzero
Looking for bzero - not found.
Looking for gethostname
Looking for gethostname - found
Looking for waitpid
Looking for waitpid - not found.
Looking for wait3
Looking for wait3 - not found.
Looking for usleep
Looking for usleep - found
Looking for accept
Looking for accept - found
Looking for bind
Looking for bind - found
Looking for getsockname
Looking for getsockname - found
Looking for getsockopt
Looking for getsockopt - found
Looking for setsockopt
Looking for setsockopt - found
Looking for socket
Looking for socket - found
Looking for listen
Looking for listen - found
Looking for std::vfprintf
Looking for std::vfprintf - found
Looking for std::vsnprintf
Looking for std::vsnprintf - found
Looking for _stricmp
Looking for _stricmp - found
Looking for socklen_t definition
Looking for socklen_t definition - not found.
Looking for gettimeofday
Looking for gettimeofday - found
Looking for connect
Looking for connect - found
Looking for mkstemp
Looking for mkstemp - not found.
Looking for mktemp
Looking for mktemp - found
Looking for select
Looking for select - found
Looking for strcasecmp
Looking for strcasecmp - found
Looking for strncasecmp
Looking for strncasecmp - found
Looking for strerror_r
Looking for strerror_r - not found.
Looking for std::ios_base::openmode definition
Looking for std::ios_base::openmode definition - not found.
Looking for pthread_rwlock_init
Looking for pthread_rwlock_init - found
Looking for uchar definition
Looking for uchar definition - not found.
Looking for ushort definition
Looking for ushort definition - not found.
Looking for uint definition
Looking for uint definition - not found.
Looking for ulong definition
Looking for ulong definition - not found.
Looking for longlong definition
Looking for longlong definition - not found.
Looking for ulonglong definition
Looking for ulonglong definition - not found.
Checking support for C++ type bool
Checking support for C++ type bool -- yes
Checking signedness of char
Checking signedness of char -- signed
Checking whether pthread_t is a pointer type
Checking whether pthread_t is a pointer type -- no
Checking whether typename works correctly
Checking whether typename works correctly -- yes
Checking whether ENAMETOOLONG is defined
Checking whether ENAMETOOLONG is defined -- yes
Checking whether strerror_r returns an int
Checking whether strerror_r returns an int -- no
Checking whether variable length arrays are supported
Checking whether variable length arrays are supported -- yes
Checking whether std::ios::nocreate exists
Checking whether std::ios::nocreate exists -- no
Looking for pthread_key_create in pthread
Looking for pthread_key_create in pthread - found
Looking for sem_init in rt
Looking for sem_init in rt - not found
Configuring done |
- second point, voici la second configure (+ Generate) de CMake
Code:
1 2 3 4 5 6 7 8 9 10
|
Info: DCMTK XML support will be enabled
Info: DCMTK PNG support will be enabled
Info: DCMTK TIFF support will be enabled
Info: DCMTK OPENSSL support will be enabled
Info: DCMTK ZLIB support will be enabled
Info: DCMTK's builtin private dictionary support will be disabled
Info: Thread support will be disabled
Configuring done
Generating done |
- et voici après compilation sous CodeBlock le :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
||=== DCMTK, all ===|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:uuid.lib ' unrecognized|
||Warning: .drectve `-defaultlib:uuid.lib ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
||Warning: .drectve `-defaultlib:LIBCMT ' unrecognized|
||Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized|
CMakeFiles\xml2dcm.dir\objects.a(xml2dcm.obj)xml2dcm.cc|| undefined reference to `_imp__xmlFree'|
CMakeFiles\xml2dcm.dir\objects.a(xml2dcm.obj)xml2dcm.cc|| undefined reference to `_imp__xmlFree'|
CMakeFiles\xml2dcm.dir\objects.a(xml2dcm.obj)xml2dcm.cc|| undefined reference to `_imp__xmlFree'|
CMakeFiles\xml2dcm.dir\objects.a(xml2dcm.obj)xml2dcm.cc|| undefined reference to `_imp__xmlFree'|
CMakeFiles\xml2dcm.dir\objects.a(xml2dcm.obj)xml2dcm.cc|| undefined reference to `_imp__xmlFree'|
CMakeFiles\xml2dcm.dir\objects.a(xml2dcm.obj)xml2dcm.cc|| more undefined references to `_imp__xmlFree' follow|
..\valid.c:(.text[_xmlValidBuildContentModel]+0x6)||undefined reference to `_chkstk'|
..\valid.c:(.text[_xmlValidateElementContent]+0x6)||undefined reference to `_chkstk'|
..\debugXML.c:(.text[_xmlDebugDumpElemDecl]+0x6)||undefined reference to `_chkstk'|
iconv.c:(.text[_libiconvlist]+0x9)||undefined reference to `_chkstk'|
||=== Build finished: 10 errors, 44 warnings (4 minutes, 19 seconds) == |
Je tiens à préciser que j'ai cherché pas mal de temps pour cette erreur, après j'avoue être un peu une noob à ce sujet, sans parler du fait que je ne suis pas à l'aise avec la configuration en générale ...
Du coup sachant que DCMTK est dev sur Linux, j'ai installé Cygwin pour tester (j'ai un linux sur le pc du travail, mais sans les droits ... hyper pratique ==', et je n'ai jamais pris le temps de mettre en dual mon pc personnel ... ). Je suis l'installation de DCMTK et au moment de la stape 2 "make all", il m'indique
Code:
1 2 3
|
MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
Fatal: 'config-all' does not exist - don't know how to make it |
je regarde dans le dossier config et en effet je n'ai rien de tel. Là aussi j'ai cherché un moment mais je n'ai pas la réponse sur le pourquoi ...
Du coup si vous avez des idées, que ce soit sous windows, linux je suis preneuse :) Sinon je suis aussi ouverte à toute autre(s) alternative(s) au DCMTK (avec les contraites du début, cpp open source multiplateforme).
Merci à ceux ayant eu le courage de me lire ^^