[Dcmlib] gcc

Mathieu Malaterre mathieu.malaterre at kitware.com
Tue Jul 19 16:18:32 CEST 2005


> Qu'entendez vous par: il n y a rien ici ? Si il y a des lignes de code entre ? si c est cela, non il n y a rien.

Non tu envois tes emails en HTML, les <> des includes sont interpretes comme des balises HTML vides.

 
> Quant aux string, je n ai pas mis std::string, mais string, vu que j ai un include <string.h> et que ça compilait très bien avec gcc 2.96


Le code suivant compile sous VS6:

for(int bla=0; bla<foo; bla++)
{
}

std::cout << bla << std::endl;


Mais d'apres la spec C++ c'est invalide. 
Conclusion:
"Ca compile" n'est pas equivalent a "c'est du c++ valide".

Dans les vielles version de gcc, il y a tres longtemps lorsque le c++ venait d'etre definis, gcc ouvrait les namespace std. Ce qui est faux (VS6 et d'autre vieux compilo ouvre aussi le namespace std), mais encore une fois ce n'est pas dans la spec c++, ce n'est pas valide, ca ne dois pas compiler ! Saut si l'util ouvre *explicitement* le namespace.

Mathieu


> Olivier
> 
> 
> ----------------------------------------
> olivier.stern at swing.be wrote:
> 
> > Voici en premier les header que j utilise dans le fichier et le début 
> > d erreur à la compilation:
> >
> > #include \"gdcmFile.h\"
> > #include \"gdcmFileHelper.h\"
> > #include \"gdcmDocument.h\"
> > #include \"gdcmValEntry.h\"
> > #include \"gdcmBinEntry.h\"
> > #include \"gdcmDebug.h\"
> > #include
> > #include
> > #include
> > #include
> >
> > #ifndef _WIN32
> > #include //for access, unlink
> 
> Il n'y a rien, ici?
> 
> > #else
> > #include //for _access
> 
> Ni ici?
> 
> > #endif
> >
> le pb des string undefined ?
> as-tu bien ecrit
> std::string?
> JP
> 
> > In file included from 
> > /usr/lib/gcc/i586-mandrake-linux-gnu/3.4.1/../../../../include/c++/3.4.1/backward/fstream.h:31,
> > from /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:26:
> > /usr/lib/gcc/i586-mandrake-linux-gnu/3.4.1/../../../../include/c++/3.4.1/backward/backward_warning.h:32:2: 
> > warning: #warning This file includes at least one deprecated or 
> > antiquated header. Please consider using one of the 32 headers found 
> > in section 17.4.1.2 of the C++ standar! d. Examples include 
> > substituting the header for the header for C++ includes, or instead of 
> > the deprecated header . To disable this warning use -Wno-deprecated.
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx: In 
> > function `void drawline(int, int, int, int, int, int, uint8_t*, int, 
> > int, int)':
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:39: 
> > error: `max' undeclared (first use this function)
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:39: 
> > error: (Each undeclared identifier is reported only once for each 
> > function it appears in.)
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx: In 
> > function `void colorize(int, int, int, int, int, int, int, int, int, 
> > int, uint8_t*, int, int, int)':
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:76: 
> > error: `max' undeclared (first use this function)
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx: At 
> > global scope:
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:168: 
> > error: `string' was not declared in this scope
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:168: 
> > error: expected `,' or `;' before '{' token
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx: In 
> > function `float ReturnVolume(char*, int*)':
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:188: 
> > error: `string' undeclared (first use this function)
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:188: 
> > error: expected `;' before \"line\"
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:199: 
> > error: `line' undeclared (first use this function)
> > /home/olivier/Tfe/GDCM/gdcmBin/bin/Tfe/Recalage/exGrey2RGB.cxx:201: 
> > error: `string' has not been declared
> >
> >
> >
> > ----------------------------------------
> > olivier.stern at swing.be wrote:
> >
> > > Bonjour,
> > >
> > > Je suis assez embêté car il faut la version 3 de gcc pou! r faire
> > > compiler par cmake Qt (d'après des informations collectées sur le
> > > net). J'ai donc mis a jour mon compilateur gcc et bien que j'obtiens
> > > toujours des erreurs dans la compilation de mon code, elles sont
> > > différentes, il y a certainement de l'espoir. Mon problème est que je
> > > n'ai jamais réussi à compiler mon programme gdcm avec gcc 3. J'ai du
> > > douwngrader à la 2 pour que ça fonctionne en fait. Pourtant je suis
> > > sur d'avoir lu quelque part que gdcm fonctionnait avec gcc 3. Ma
> > > version exacte est 3.4.1.
> > >
> > > Et ce n'est pas que gdcm, je veux dire lorsque j'ai installé vtk et
> > > itk, un make avec gcc 3 me faisait planter l installation, alors que
> > > lorsque je suis repassé à la 2.96, je n'ai eu plus aucun problème.
> > >
> > > Quelqu'un a t il eu le même problème ?
> >
> > I'm currenlty using gcc 3.3.3, and I haven't got any trouble.
> > Several months ago, I had to give up gcc 2.96, due to compilation 
> > problems.
> > Can you send us a! copy of the piece of code + error listing.
> >
> > Peux-tu nous envoyer le bout de code qui plante a la compile, ainsi que
> > le listing des erreurs.
> > Merci
> > JPRx
> >
> > >
> > > Merci,
> > > Olivier
> > >
> > > -English-
> > >
> > > I have a little problem. I need gcc 3 to compile a Qt project using
> > > cmake (if I believe what I found ! on the net). I did upgrate my
> > > compiler version and seeing my result compilation, I feel that I am on
> > > the good way. My trouble is that I ve never arrived to compile a gdcm
> > > project with gcc version 3. I had to downgrade my version to 2.96 to
> > > make it work. But I m sure I ve seen someone using gdcm with gcc 3. My
> > > exact version is 3.4.1.
> > >
> > > And that s not only for gdcm. When I installed itk and vtk, it made
> > > lots of error until I downgrade my compiler.
> > >
> > > Did someone have the problem ?
> > >
> > > Thanks for your Help,
> > > Olivier
> > >
> > >------------------------------------------------------------------------
> > >
> > >_______________________________________________
> > >Dcmlib mailing list
> > >Dcmlib at creatis.insa-lyon.fr
> > >http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib
> > >
> >
> >
> 
> 
> 
> 
-------------- next part --------------
_______________________________________________
Dcmlib mailing list
Dcmlib at creatis.insa-lyon.fr
http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib


More information about the Dcmlib mailing list