[Dcmlib] Big Endian testing: Mac G5

Mathieu Malaterre mathieu.malaterre at kitware.com
Mon Sep 27 14:39:00 CEST 2004


> ---------------------------
> Beaucoup de warning de build (linux ou darwin) viennent d'entrees contenues
> dans les librairies jpeg copiees dans gdcm: les entrees du style
>    gdcm/src/jpeg/libijg8/...
> A priori VTK (par exemple) qui inclu aussi la lib jpeg) devrait avoir
> le meme souci. Y'a t'il un moyen de ne pas reporter les warning de
> compil sur des sous-repertoires ???

Je me suis poser la meme question, parce que j'utilise les *meme* flags 
que nos compils nightly sur VTK/ITK...
If faut que je fasse un diff VTK/.../jpeg gdcm/../jpeg


> ---------------------------
> Au sujet de GDCM-DarwinG5-g++ et Test::TestReadWriteReadCompare
> Le message d'erreur est
>   Test::TestReadWriteReadCompare: Could not reread image
>   written:/Users/kitware/Dashboards/My Tests/gdcmData/CT-MONO2-12-lomb-an2.acr
> ce qui me laisse penser qu'effectivement les endianeries deconnent.
> 

ok

> ---------------------------
> Au sujet de GDCM-DarwinG5-g++ et Test::TestAllReadCompareDicom:
>  le message d'erreur est 
> 
> Testing: /Users/kitware/Dashboards/My Tests/gdcmData/CT-MONO2-12-lomb-an2.acr
>       Reference image 
>       /Users/kitware/Dashboards/My Tests/gdcmData/BaselineDicom/ \
>       CT-MONO2-12-lomb-an2.dcm
>              is not gdcm compatible.
> Or JPR n'a jamais rempli gdcmData/BaselineDicom. Donc:
>  * soit le fichier
>       gdcmData/BaselineDicom/CT-MONO2-12-lomb-an2.dcm
>    n'existe pas, et auquel cas le message de gdcm sur son ouverture
>    est loin d'etre explicite.
>  * soit le fichier en question existe, et il est le resultat
>    d'un run precedent sur ce test ! Ce qui pouverait que le Write()
>    ne fonctionne pas.
> Vu ce qui se passe pour Test::TestReadWriteReadCompare, je serais
> tenter de penser que c'est la deuxieme hypothese qui est la bonne. Auquel
> cas en fixant le Write() les deux test seront fixe's...

Ok j'envoi en privee l'image CT-MONO2-12-lomb-an2.dcm a toi et JPR.

> ---------------------------
> Au sujet de GDCM-DarwinG5-g++ et Test::TestCopyDicom:
>   Exception executing: Segmentation fault
> sans un gdb, je peux pas faire grand chose...

Failed to open (write) File [../Testing/Temporary/output.dcm]
../Testing/Temporary/output.dcm Failed
Filename: /Users/kitware/Software/gdcmData/SIEMENS_GBS_III-16-ACR_NEMA_1.acr

Program received signal EXC_BAD_ACCESS, Could not access memory.
0xffff8b2c in __memcpy ()
(gdb) bt
#0  0xffff8b2c in __memcpy ()
#1  0x9001eea0 in fread ()
#2  0x008f13b0 in gdcmFile::ReadPixelData(void*) (this=0x700240, 
destination=0x845000) at /Users/kitware/Software/gdcm/src/gdcmFile.cxx:1147
#3  0x008ef5e0 in gdcmFile::GetImageDataIntoVectorRaw(void*, unsigned 
long) (this=0x700240, destination=0x845000, maxSize=131072) at 
/Users/kitware/Software/gdcm/src/gdcmFile.cxx:564
#4  0x008eeee8 in gdcmFile::GetImageDataIntoVector(void*, unsigned long) 
(this=0x700240, destination=0x845000, maxSize=131072) at 
/Users/kitware/Software/gdcm/src/gdcmFile.cxx:414
#5  0x008eedb4 in gdcmFile::GetImageData() (this=0x700240) at 
/Users/kitware/Software/gdcm/src/gdcmFile.cxx:371
#6  0x0000a464 in TestCopyDicom(int, char**) () at 
/Users/kitware/Software/gdcm/Test/TestCopyDicom.cxx:73
#7  0x000026e0 in main (ac=1, av=0xbffffc68) at 
/Users/kitware/Software/gdcm-gcc/Test/gdcmTests.cxx:179
(gdb) up
#1  0x9001eea0 in fread ()
(gdb)
#2  0x008f13b0 in gdcmFile::ReadPixelData(void*) (this=0x700240, 
destination=0x845000) at /Users/kitware/Software/gdcm/src/gdcmFile.cxx:1147
1147          size_t ItemRead = fread(destination, 
Header->GetPixelAreaLength(), 1, fp);
(gdb) p destination
$1 = (void *) 0x845000
(gdb) p Header->GetPixelAreaLength()
$2 = 132096
(gdb) print ftell(fp)
Unable to call function at 0x90026bc0: no return type information available.
To call this function anyway, you can cast the return type explicitly 
(e.g. 'print (float) fabs (3.0)')
(gdb) print (long)ftell(fp)
$3 = 139264
(gdb)


Mathieu





More information about the Dcmlib mailing list