[Gdal-dev] Build Gdal 1.6.3 with MSG driver on Windows Vista and Microsoft Visual Studio 2008

kanenas kanenas0 at yahoo.com
Sat Dec 19 19:17:01 EST 2009


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.


More information about the gdal-dev mailing list