Hi Jason, I'm not a Windows developer so have had to sit on the sidelines on helping out with this one as I don't have the expertise to dive in, good to hear you've resolve problem, hopefully this help others. W.r.t CMake GUI not updating the CMakeLists.txt, this is normal and correct, when you run cmake it just creates and updated the CMakeCache.txt and associated build files once you generate them, it doesn't touch the CMakeLists.txt.
Is there a chance you were missing the some setup when generating the project files? Robert. On Thu, Sep 10, 2009 at 1:39 AM, Jason Jerald <[email protected]>wrote: > > For some reason the CMake GUI was not updating DCMTK CMakeLists.txt. I.e., > /MT was being used instead of /MD as defined in the CMake GUI. Manually > changing from /MT to /MD in CMakeLists.txt has resolved the issue and > everything is working now. > > Jason > > > > > > CMake was not changing my settings to /MD > > > Jason Jerald wrote: > >> Hello everyone. I built DCMTK 3.5.4 successfully but am having problems >> building Plugins Dicom. I am using Visual Studio 2005 on Windows Vista. Has >> anybody built Plugins dicom successfully with Visual Studio on Window Vista? >> >> I believe the following might(?) be issues in building Plugins dicom >> >> >> *** /MD versus /MT *** >> When making DCMTK with CMake the CMAKE_CXX_FLAGS have /MD which is the >> same for OSG. However, when I look at the projects in Visual Studio, the >> flags are /MT. Is this a problem? If so, why is CMake not setting it >> correctly and how can I fix it? >> >> *** iostream.h versus iostream *** >> OSG uses iostream. I am not convinced the file ofstream in DCMTK is >> configured to use iostream correctly. I tried hardcoding the use of iostream >> without getting plugin dicom to build successfully. >> >> *** other library conflicts? **** >> I tried the \NoDefaultLib option and tried ignoring some other libraries >> with no success. >> >> *** other problems *** >> I might be completely missing something. Could there be some other >> problem? Any ideas what I am doing wrong? The output is below. >> >> Thanks! >> >> Jason >> >> >> >> >> >> >> >> >> >> Error 72 error LNK2005: "public: __thiscall std::basic_string<char,struct >> std::char_traits<char>,class std::allocator<char> >> >::~basic_string<char,struct std::char_traits<char>,class >> std::allocator<char> >(void)" (??1?$basic_str...@du?$char_traits@d...@std@ >> @v?$alloca...@d@2@@std@@q...@xz) already defined in >> dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 73 error LNK2005: "public: __thiscall std::basic_string<char,struct >> std::char_traits<char>,class std::allocator<char> >> >::basic_string<char,struct std::char_traits<char>,class >> std::allocator<char> >(char const *)" (??0?$basic_str...@du >> ?$char_tra...@d@std@@v?$alloca...@d@2@@std@@q...@pbd@Z) already defined in >> dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 74 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::operator<<(class std::basic_ostream<char,struct >> std::char_traits<char> > & (__cdecl*)(class std::basic_ostream<char,struct >> std::char_traits<char> > &))" (??6?$basic_ostr...@du?$char_traits@d...@std@ >> @@std@@qaeaa...@p6aaav01@AAV01@@z...@z) already defined in >> dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 75 error LNK2005: "class std::basic_ostream<char,struct >> std::char_traits<char> > & __cdecl std::endl(class >> std::basic_ostream<char,struct std::char_traits<char> > &)" (?e...@std >> @@yaaav?$basic_ostr...@du?$char_traits@d...@std@@@1...@aav21@@Z) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 76 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::operator<<(double)" (??6?$basic_ostr...@du >> ?$char_tra...@d@std@@@std@@qaeaa...@n@Z) already defined in >> dcmimgle.lib(diimage.obj) msvcprtd.lib >> Error 77 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::operator<<(unsigned int)" (??6?$basic_ostr...@du >> ?$char_tra...@d@std@@@std@@qaeaa...@i@Z) already defined in >> dcmdata.lib(dchashdi.obj) msvcprtd.lib >> Error 78 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::operator<<(class std::ios_base & (__cdecl*)(class >> std::ios_base &))" (??6?$basic_ostr...@du?$char_traits@d...@std@@@std@ >> @qaeaa...@p6aaavios_base@1...@aav21@@z...@z) already defined in >> dcmdata.lib(dcfilefo.obj) msvcprtd.lib >> Error 79 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::operator<<(int)" (??6?$basic_ostr...@du >> ?$char_tra...@d@std@@@std@@qaeaa...@h@Z) already defined in >> dcmimgle.lib(dimoimg.obj) msvcprtd.lib >> Error 80 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::operator<<(unsigned short)" (??6?$basic_ostr...@du >> ?$char_tra...@d@std@@@std@@qaeaa...@g@Z) already defined in >> dcmimgle.lib(dimoimg.obj) msvcprtd.lib >> Error 81 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::operator<<(unsigned long)" (??6?$basic_ostr...@du >> ?$char_tra...@d@std@@@std@@qaeaa...@k@Z) already defined in >> dcmimgle.lib(dimoimg.obj) msvcprtd.lib >> Error 82 error LNK2005: "public: char const * __thiscall >> std::basic_string<char,struct std::char_traits<char>,class >> std::allocator<char> >::c_str(void)const " (?c_...@?$basic_string@DU >> ?$char_tra...@d@std@@v?$alloca...@d@2@@std@@QBEPBDXZ) already defined in >> dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 83 error LNK2005: "public: __thiscall std::basic_string<char,struct >> std::char_traits<char>,class std::allocator<char> >> >::basic_string<char,struct std::char_traits<char>,class >> std::allocator<char> >(class std::basic_string<char,struct >> std::char_traits<char>,class std::allocator<char> > const &)" >> (??0?$basic_str...@du?$char_traits@d...@std@@v?$alloca...@d@2@@std@ >> @q...@abv01@@Z) already defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 84 error LNK2005: "public: int __thiscall >> std::ios_base::setf(int,int)" (?s...@ios_base@std@@qae...@z) already >> defined in dcmimgle.lib(digsdlut.obj) msvcprtd.lib >> Error 85 error LNK2005: "public: void __thiscall >> std::basic_ios<char,struct std::char_traits<char> >::setstate(int,bool)" >> (?setst...@?$basic_ios@du?$char_tra...@d@std@@@std@@qaex...@z) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 86 error LNK2005: "public: int __thiscall std::ios_base::width(int)" >> (?wi...@ios_base@std@@qa...@z) already defined in >> dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 87 error LNK2005: "public: int __thiscall >> std::basic_streambuf<char,struct std::char_traits<char> >::sputn(char const >> *,int)" (?sp...@?$basic_streambuf@du?$char_tra...@d@std@@@std@@qaehp...@z) >> already defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 88 error LNK2005: "public: static bool __cdecl >> std::char_traits<char>::eq_int_type(int const &,int const &)" (?eq_int_type@ >> ?$char_tra...@d@std@@sa_na...@z) already defined in >> dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 89 error LNK2005: "public: static int __cdecl >> std::char_traits<char>::eof(void)" (?...@?$char_traits@d...@std@@SAHXZ) >> already defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 90 error LNK2005: "public: int __thiscall >> std::basic_streambuf<char,struct std::char_traits<char> >::sputc(char)" >> (?sp...@?$basic_streambuf@du?$char_tra...@d@std@@@std@@qa...@z) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 91 error LNK2005: "public: class std::basic_streambuf<char,struct >> std::char_traits<char> > * __thiscall std::basic_ios<char,struct >> std::char_traits<char> >::rdbuf(void)const " (?rd...@?$basic_ios@DU >> ?$char_tra...@d@std@@@std@@qbepav?$basic_stream...@du?$char_traits@d...@std@ >> @@2...@xz) already defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 92 error LNK2005: "public: char __thiscall >> std::basic_ios<char,struct std::char_traits<char> >::fill(void)const " >> (?f...@?$basic_ios@du?$char_tra...@d@std@@@std@@QBEDXZ) already defined >> in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 93 error LNK2005: "public: int __thiscall >> std::ios_base::flags(void)const " (?fl...@ios_base@std@@QBEHXZ) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 94 error LNK2005: "public: int __thiscall >> std::ios_base::width(void)const " (?wi...@ios_base@std@@QBEHXZ) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 95 error LNK2005: "public: static unsigned int __cdecl >> std::char_traits<char>::length(char const *)" (?len...@?$char_traits@D >> @std@@sai...@z) already defined in dcmimgle.lib(dcmimage.obj) >> msvcprtd.lib >> Error 96 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > & __thiscall std::basic_ostream<char,struct >> std::char_traits<char> >::flush(void)" (?fl...@?$basic_ostream@DU >> ?$char_tra...@d@std@@@std@@qaeaa...@xz) already defined in >> dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 97 error LNK2005: "public: class std::basic_ostream<char,struct >> std::char_traits<char> > * __thiscall std::basic_ios<char,struct >> std::char_traits<char> >::tie(void)const " (?...@?$basic_ios@DU >> ?$char_tra...@d@std@@@std@@qbepav?$basic_ostr...@du?$char_traits@d...@std@ >> @@2...@xz) already defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 98 error LNK2005: "public: bool __thiscall >> std::ios_base::good(void)const " (?g...@ios_base@std@@QBE_NXZ) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 99 error LNK2005: "public: void __thiscall >> std::basic_ostream<char,struct std::char_traits<char> >::_Osfx(void)" >> (?_o...@?$basic_ostream@du?$char_tra...@d@std@@@std@@QAEXXZ) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 100 error LNK2005: "public: void __thiscall >> std::basic_streambuf<char,struct std::char_traits<char> >::_Lock(void)" >> (?_l...@?$basic_streambuf@du?$char_tra...@d@std@@@std@@QAEXXZ) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 101 error LNK2005: "public: void __thiscall >> std::basic_streambuf<char,struct std::char_traits<char> >::_Unlock(void)" >> (?_unl...@?$basic_streambuf@du?$char_tra...@d@std@@@std@@QAEXXZ) already >> defined in dcmimgle.lib(dcmimage.obj) msvcprtd.lib >> Error 102 error LNK2005: "private: static class std::locale::_Locimp * >> __cdecl std::locale::_Getgloballocale(void)" (?_getgloballoc...@locale >> @std@@capav_loc...@12@XZ) already defined in msvcprtd.lib(MSVCP80D.dll) >> libcpmt.lib >> Error 103 error LNK2005: "private: static void __cdecl >> std::locale::facet::facet_Register(class std::locale::facet *)" >> (?facet_regis...@facet@loc...@std@@CAXPAV123@@Z) already defined in >> msvcprtd.lib(MSVCP80D.dll) libcpmt.lib >> Error 104 error LNK2005: "public: static void __cdecl >> std::_Locinfo::_Locinfo_dtor(class std::_Locinfo *)" (?_Locinfo_dtor@ >> _loci...@std@@SAXPAV12@@Z) already defined in msvcprtd.lib(MSVCP80D.dll) >> libcpmt.lib >> Error 105 error LNK2005: "private: static class std::locale::_Locimp * >> __cdecl std::locale::_Init(void)" (?_i...@locale@std@@capav_loc...@12@XZ) >> already defined in msvcprtd.lib(MSVCP80D.dll) libcpmt.lib >> Error 106 error LNK2005: "public: static void __cdecl >> std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,char const *)" >> (?_locinfo_c...@_locinfo@std@@saxpa...@pbd@Z) already defined in >> msvcprtd.lib(MSVCP80D.dll) libcpmt.lib >> Error 107 error LNK2005: "public: static void __cdecl >> std::ios_base::_Addstd(class std::ios_base *)" (?_add...@ios_base@std@ >> @SAXPAV12@@Z) already defined in msvcprtd.lib(MSVCP80D.dll) libcpmt.lib >> Error 108 error LNK2005: "private: static void __cdecl >> std::ios_base::_Ios_base_dtor(class std::ios_base *)" >> (?_ios_base_d...@ios_base@std@@CAXPAV12@@Z) already defined in >> msvcprtd.lib(MSVCP80D.dll) libcpmt.lib >> Error 109 error LNK2005: "public: __thiscall std::_Lockit::_Lockit(int)" >> (??0_loc...@std@@q...@h@Z) already defined in msvcprtd.lib(MSVCP80D.dll) >> libcpmt.lib >> Error 110 error LNK2005: "public: __thiscall std::_Lockit::~_Lockit(void)" >> (??1_loc...@std@@q...@xz) already defined in msvcprtd.lib(MSVCP80D.dll) >> libcpmt.lib >> Error 111 error LNK2005: __invalid_parameter already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 112 error LNK2005: __errno already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 113 error LNK2005: _localeconv already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 114 error LNK2005: __encode_pointer already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 115 error LNK2005: __encoded_null already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 116 error LNK2005: __decode_pointer already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 117 error LNK2005: __amsg_exit already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 118 error LNK2005: __initterm_e already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 119 error LNK2005: _fflush already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 120 error LNK2005: __unlock already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 121 error LNK2005: __lock already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 122 error LNK2005: ___CppXcptFilter already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 123 error LNK2005: _atoi already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 124 error LNK2005: ___xi_a already defined in >> MSVCRTD.lib(cinitexe.obj) LIBCMT.lib >> Error 125 error LNK2005: ___xi_z already defined in >> MSVCRTD.lib(cinitexe.obj) LIBCMT.lib >> Error 126 error LNK2005: ___xc_a already defined in >> MSVCRTD.lib(cinitexe.obj) LIBCMT.lib >> Error 127 error LNK2005: ___xc_z already defined in >> MSVCRTD.lib(cinitexe.obj) LIBCMT.lib >> Error 128 error LNK2005: "void __cdecl terminate(void)" (?terminate@@YAXXZ) >> already defined in MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 129 error LNK2005: _getenv already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 130 error LNK2005: __strtoi64 already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 131 error LNK2005: __strtoui64 already defined in >> MSVCRTD.lib(MSVCR80D.dll) LIBCMT.lib >> Error 134 error LNK2019: unresolved external symbol _wsaclea...@0referenced >> in function "long __cdecl gethostid(void)" (?gethostid@@YAJXZ) >> dcmdata.lib >> Error 135 error LNK2019: unresolved external symbol >> _gethostbyn...@4referenced in function "long __cdecl gethostid(void)" >> (?gethostid@@YAJXZ) >> dcmdata.lib >> Error 136 error LNK2019: unresolved external symbol _gethostn...@8referenced >> in function "long __cdecl gethostid(void)" (?gethostid@@YAJXZ) >> dcmdata.lib >> Error 137 error LNK2019: unresolved external symbol _wsastar...@8referenced >> in function "long __cdecl gethostid(void)" (?gethostid@@YAJXZ) >> dcmdata.lib >> Error 138 error LNK2019: unresolved external symbol _main referenced in >> function ___tmainCRTStartup LIBCMT.lib >> Error 139 fatal error LNK1120: 5 unresolved externals >> ..\..\..\bin\Debug\..\osgPlugins-2.8.2\osgdb_dicomd.dll >> Error 140 fatal error LNK1104: cannot open file 'wldap32.lib' Plugins curl >> >> >> >> >> _______________________________________________ >> osg-users mailing list >> [email protected] >> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >> >> >> > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >
_______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

