Dear list I want to build MSG DRIVER for GDAL in order to read hrit data. I have downloaded Wavelet Transform Software 2.04 on my Vista PC. I have also installed Microsoft Visual Studio 2008 with SP1.
When I built GDAL 1.6.3 with no extra enabled driver, everything was fine. Build was successful and gdal worked fine. After that I tried to enable MSG driver. I extracted the *.vc makefiles for the PublicDecompWT folder from the file PublicDecompWTMakefiles.zip and I also copied the Wavelet Transform Files (folders DISE and COMP). I built GDAL again, and it was successful. When I tried to read hrit data, gdal didn't support MSG driver. I checked the build log and there was not any line for the PublicDecompWT. I opened the \gdal\frmts\makefle.vc and I saw that there was not EXTRAFLAG for MSG. I added -DFRMT_msg at the end of EXTRAFLAGS. I built GDAL again, and I got many warnings and one error for MSG 1>e:\soft\gdal\frmts>cd msg && nmake /nologo /f makefile.vc && cd .. 1> cl /nologo /MD /EHsc /Zi /W4 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Fd..\..\gdal16.pdb -I..\..\port -I..\..\ogr -I..\..\gcore -I..\..\alg -I..\..\ogr\ogrsf_frmts -I PublicDecompWT\DISE -I PublicDecompWT\COMP\WT\Inc -I PublicDecompWT\COMP\Inc -DOGR_ENABLED /c msgdataset.cpp 1>msgdataset.cpp 1>e:\soft\gdal\frmts\msg\reflectancecalculator.h(57) : warning C4512: 'ReflectanceCalculator' : assignment operator could not be generated 1> e:\soft\gdal\frmts\msg\reflectancecalculator.h(40) : see declaration of 'ReflectanceCalculator' 1>WINDOWS BUILD 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(793) : warning C4996: 'std::basic_string<_Elem,_Traits,_Ax>::copy': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1> C:\Program Files\Microsoft Visual Studio 9.0\VC\include\xstring(1709) : see declaration of 'std::basic_string<_Elem,_Traits,_Ax>::copy' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(803) : warning C4996: 'std::basic_string<_Elem,_Traits,_Ax>::copy': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1> C:\Program Files\Microsoft Visual Studio 9.0\VC\include\xstring(1709) : see declaration of 'std::basic_string<_Elem,_Traits,_Ax>::copy' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(2020) : warning C4100: 'span' : unreferenced formal parameter 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(2207) : warning C4244: '-=' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(2235) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT\DISE\CDataField.h(381) : warning C4100: 'i_Size' : unreferenced formal parameter 1>e:\soft\gdal\frmts\msg\PublicDecompWT\COMP\Inc\CImage.h(198) : warning C4244: '=' : conversion from 'unsigned int' to 'unsigned short', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT\COMP\Inc\CImage.h(258) : warning C4244: 'argument' : conversion from 'unsigned int' to 'const unsigned short', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT\COMP\Inc\CImage.h(258) : warning C4244: 'argument' : conversion from 'unsigned int' to 'const unsigned short', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT\COMP\Inc\CQualityInfo.h(146) : warning C4244: '=' : conversion from 'int' to 'short', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT/COMP/WT/Inc/CWTDecoder.h(87) : warning C4244: 'argument' : conversion from 'unsigned int' to 'const unsigned short', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT/COMP/WT/Inc/CWTDecoder.h(87) : warning C4244: 'argument' : conversion from 'unsigned int' to 'const unsigned short', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT/COMP/WT/Inc/CWTDecoder.h(88) : warning C4244: 'argument' : conversion from 'unsigned int' to 'const unsigned short', possible loss of data 1>e:\soft\gdal\frmts\msg\PublicDecompWT/COMP/WT/Inc/CWTDecoder.h(88) : warning C4244: 'argument' : conversion from 'unsigned int' to 'const unsigned short', possible loss of data 1>msgdataset.cpp(496) : warning C4244: 'initializing' : conversion from 'const int' to 'unsigned short', possible loss of data 1>msgdataset.cpp(497) : warning C4244: 'initializing' : conversion from 'const int' to 'unsigned short', possible loss of data 1>msgdataset.cpp(498) : warning C4244: 'initializing' : conversion from 'const int' to 'unsigned short', possible loss of data 1>msgdataset.cpp(578) : warning C4244: '=' : conversion from 'int' to 'GByte', possible loss of data 1>msgdataset.cpp(583) : warning C4244: '=' : conversion from 'unsigned short' to 'GByte', possible loss of data 1>msgdataset.cpp(599) : warning C4244: '=' : conversion from 'int' to 'GByte', possible loss of data 1>msgdataset.cpp(611) : warning C4244: '=' : conversion from 'unsigned short' to 'GByte', possible loss of data 1>msgdataset.cpp(455) : warning C4100: 'nBlockXOff' : unreferenced formal parameter 1> cl /nologo /MD /EHsc /Zi /W4 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Fd..\..\gdal16.pdb -I..\..\port -I..\..\ogr -I..\..\gcore -I..\..\alg -I..\..\ogr\ogrsf_frmts -I PublicDecompWT\DISE -I PublicDecompWT\COMP\WT\Inc -I PublicDecompWT\COMP\Inc -DOGR_ENABLED /c xritheaderparser.cpp 1>xritheaderparser.cpp 1>xritheaderparser.cpp(75) : warning C4146: unary minus operator applied to unsigned type, result still unsigned 1>xritheaderparser.cpp(129) : warning C4189: 'loff' : local variable is initialized but not referenced 1>xritheaderparser.cpp(128) : warning C4189: 'coff' : local variable is initialized but not referenced 1>xritheaderparser.cpp(126) : warning C4189: 'cfac' : local variable is initialized but not referenced 1> cl /nologo /MD /EHsc /Zi /W4 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Fd..\..\gdal16.pdb -I..\..\port -I..\..\ogr -I..\..\gcore -I..\..\alg -I..\..\ogr\ogrsf_frmts -I PublicDecompWT\DISE -I PublicDecompWT\COMP\WT\Inc -I PublicDecompWT\COMP\Inc -DOGR_ENABLED /c prologue.cpp 1>prologue.cpp 1>prologue.cpp(221) : warning C4189: 'version' : local variable is initialized but not referenced 1> cl /nologo /MD /EHsc /Zi /W4 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Fd..\..\gdal16.pdb -I..\..\port -I..\..\ogr -I..\..\gcore -I..\..\alg -I..\..\ogr\ogrsf_frmts -I PublicDecompWT\DISE -I PublicDecompWT\COMP\WT\Inc -I PublicDecompWT\COMP\Inc -DOGR_ENABLED /c msgcommand.cpp 1>msgcommand.cpp 1>msgcommand.cpp(82) : warning C4018: '<' : signed/unsigned mismatch 1>msgcommand.cpp(83) : warning C4018: '>' : signed/unsigned mismatch 1>msgcommand.cpp(133) : warning C4018: '<' : signed/unsigned mismatch 1>msgcommand.cpp(156) : warning C4018: '<' : signed/unsigned mismatch 1>msgcommand.cpp(185) : warning C4018: '<' : signed/unsigned mismatch 1> cl /nologo /MD /EHsc /Zi /W4 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Fd..\..\gdal16.pdb -I..\..\port -I..\..\ogr -I..\..\gcore -I..\..\alg -I..\..\ogr\ogrsf_frmts -I PublicDecompWT\DISE -I PublicDecompWT\COMP\WT\Inc -I PublicDecompWT\COMP\Inc -DOGR_ENABLED /c reflectancecalculator.cpp 1>reflectancecalculator.cpp 1>e:\soft\gdal\frmts\msg\reflectancecalculator.h(57) : warning C4512: 'ReflectanceCalculator' : assignment operator could not be generated 1> e:\soft\gdal\frmts\msg\reflectancecalculator.h(40) : see declaration of 'ReflectanceCalculator' 1>reflectancecalculator.cpp(69) : warning C4189: 'lam' : local variable is initialized but not referenced 1> cd PublicDecompWT\COMP\WT\Src && nmake /NOLOGO /f makefile.vc && cd ..\..\..\.. 1> copy *.obj ..\..\..\..\..\o 1>CACCoder.obj 1>CACDecoder.obj 1>CACModel.obj 1>CompressWT.obj 1>CVLCCoder.obj 1>CVLCDecoder.obj 1>CWBlock.obj 1>CWTCoder.obj 1>CWTDecoder.obj 1> 9 file(s) copied. 1> cd PublicDecompWT\COMP\Src && nmake /NOLOGO /f makefile.vc && cd ..\..\.. 1> copy *.obj ..\..\..\..\o 1>CBuffer.obj 1>CImage.obj 1>CQualityMeasures.obj 1> 3 file(s) copied. 1> cd PublicDecompWT\DISE && nmake /NOLOGO /f makefile.vc && cd ..\.. 1> cl /nologo /MD /EHsc /Zi /W4 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Fd..\..\..\..\gdal16.pdb -I..\..\..\..\port -I..\..\..\..\ogr -I..\..\..\..\gcore -I..\..\..\..\alg -I..\..\..\..\ogr\ogrsf_frmts -D"WIN32" -DOGR_ENABLED /c CxRITFileHeaderRecords.cpp 1>CxRITFileHeaderRecords.cpp 1>WINDOWS BUILD 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime.h(463) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(793) : warning C4996: 'std::basic_string<_Elem,_Traits,_Ax>::copy': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1> C:\Program Files\Microsoft Visual Studio 9.0\VC\include\xstring(1709) : see declaration of 'std::basic_string<_Elem,_Traits,_Ax>::copy' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(803) : warning C4996: 'std::basic_string<_Elem,_Traits,_Ax>::copy': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1> C:\Program Files\Microsoft Visual Studio 9.0\VC\include\xstring(1709) : see declaration of 'std::basic_string<_Elem,_Traits,_Ax>::copy' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char>, 1> _Ax=std::allocator<char> 1> ] 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(2020) : warning C4100: 'span' : unreferenced formal parameter 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(2207) : warning C4244: '-=' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\MSGTime_impl.h(2235) : warning C4244: 'argument' : conversion from 'int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(71) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(71) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(71) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(71) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(71) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(131) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(131) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(131) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(131) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(131) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\YYYYMMDDhhmm.h(131) : warning C4244: 'argument' : conversion from 'unsigned int' to 'WORD', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\CSpacecraftID.h(200) : warning C4244: 'return' : conversion from 'const GP_SC_ID::E_SC_ID' to 'unsigned short', possible loss of data 1>e:\soft\gdal\frmts\msg\publicdecompwt\dise\CSpectralChannelID.h(169) : warning C4244: 'return' : conversion from 'const GP_SC_CHAN_ID::E_SC_CHAN_ID' to 'unsigned char', possible loss of data 1>CxRITFileHeaderRecords.cpp(385) : warning C4127: conditional expression is constant 1>CxRITFileHeaderRecords.cpp(420) : warning C4244: 'argument' : conversion from 'const DISE::CxRITFileHeaderRecords::EHeaderType' to 'unsigned char', possible loss of data 1>CxRITFileHeaderRecords.cpp(432) : warning C4244: 'argument' : conversion from 'const DISE::EFileTypeCode' to 'unsigned char', possible loss of data 1>CxRITFileHeaderRecords.cpp(444) : warning C4244: 'argument' : conversion from 'const DISE::CxRITFileHeaderRecords::ECompressionFlag' to 'unsigned char', possible loss of data 1>CxRITFileHeaderRecords.cpp(468) : error C2664: 'std::basic_ostream<_Elem,_Traits>::write' : cannot convert parameter 1 from 'std::_String_const_iterator<_Elem,_Traits,_Alloc>' to 'const char *' 1> with 1> [ 1> _Elem=char, 1> _Traits=std::char_traits<char> 1> ] 1> No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called 1>CxRITFileHeaderRecords.cpp(516) : warning C4244: 'argument' : conversion from 'const DISE::CxRITFileHeaderRecords::EDataFieldRepresentation' to 'unsigned char', possible loss of data 1>NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\cl.EXE"' : return code '0x2' 1>Stop. Building failed. I have already built gdal 1.6.3 with msg driver (--with-msg) on Linux and works fine. Any idea why it doesn't work on Windows? Thanks in advance for your time -- View this message in context: http://n2.nabble.com/Build-Gdal-1-6-3-with-MSG-driver-on-Windows-Vista-and-Microsoft-Visual-Studio-2008-tp4193252p4193252.html Sent from the GDAL - Dev mailing list archive at Nabble.com. _______________________________________________ gdal-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/gdal-dev
