ITL-MTL compilation under VC++

"David Johnson" <[email protected]>
Newsgroups gmane.comp.lib.mtl.devel
Message-ID <[email protected]>
Hi,

I'm trying to build and test out the ITL test programs and the examples.
If successful I may want to use it in our commercial application.
I have found that I get quite a number of compilation errors. I've tried
using both Visual Studio .Net and VC++6 I was able to get some of the
test programs to build under VC++6 when using MTL20, but using the
newer version 21 it would not build. I updated the ITL with the bug fixes
on your website and now it won't compile due to an error in the bug
fix it appears ( mtl_amend.h).

Is there some setup that works using .NET? I would like to use bot ITL4.0 
and MTL-2.1.2-21
since it appears to be for VC7. But nothing seems to compile right off the 
bat. If you could
point me to something that works without modification I would appreciate it.

Dave

Below is a fragment from .Net using all.dsw and doing a build.

Deleting intermediate files and output files for project 'tfqmr', 
configuration 'Debug|Win32'.
Compiling...
tfqmr.cpp
d:\mtl-2.1.2-20\mtl\reverse_iter.h(44) : error C2977: 
'std::reverse_iterator' : too many template arguments
         c:\Program Files\Microsoft Visual Studio 
.NET\Vc7\include\xutility(723) : see declaration of 'std::reverse_iterator'
         d:\mtl-2.1.2-20\mtl\reverse_iter.h(83) : see reference to class 
template instantiation 'mtl::reverse_iter<Iter>' being compiled
d:\mtl-2.1.2-20\mtl\reverse_iter.h(46) : error C2977: 
'std::reverse_iterator' : too many template arguments
         c:\Program Files\Microsoft Visual Studio 
.NET\Vc7\include\xutility(723) : see declaration of 'std::reverse_iterator'
d:\mtl-2.1.2-20\mtl\dense_iterator.h(171) : error C2976: 'std::_Ranit' : 
too few template arguments
         c:\Program Files\Microsoft Visual Studio 
.NET\Vc7\include\xutility(86) : see declaration of 'std::_Ranit'
         d:\mtl-2.1.2-20\mtl\dense_iterator.h(278) : see reference to class 
template instantiation 'mtl::dense_iterator<T,,,SizeType>' being compiled

Here is an exceprt from VC++6
--------------------Configuration: ilu_gmres - Win32 Debug--------------------
Compiling...
ilu_gmres.cpp
d:\itl-4.0.0-1\itl\interface\detail\mtl_amend.h(20) : error C2989: 
'linalg_traits<class pointer_vector<Linalg> >' : template class has already 
been defined as a non-template class
d:\itl-4.0.0-1\itl\interface\detail\mtl_amend.h(20) : error C2988: 
unrecognizable template declaration/definition
d:\itl-4.0.0-1\itl\interface\detail\mtl_amend.h(29) : error C2989: 
'linalg_traits<class std::vector<Linalg,class std::allocator<Linalg> > >' : 
template class has already been defined as a non-template class
d:\itl-4.0.0-1\itl\interface\detail\mtl_amend.h(29) : error C2988: 
unrecognizable template declaration/definition
Error executing cl.exe.

Here is from .Net use MTL-2.1.2-20

------ Build started: Project: ilu_gmres, Configuration: Debug Win32 ------

Compiling...
ilu_gmres.cpp
d:\itl-4.0.0-1\itl\interface\detail\mtl_amend.h(14) : error C2065: 'T' : 
undeclared identifier
d:\itl-4.0.0-1\itl\interface\detail\mtl_amend.h(14) : error C2687: cannot 
define a nested UDT of a template class out of line
d:\itl-4.0.0-1\itl\interface\detail\mtl_amend.h(14) : fatal error C1903: 
unable to recover from previous error(s); stopping compilation


Here is .Net using MTL-2.1.2-20
Compiling...
iohb.c
ilu_gmres.cpp
d:\mtl-2.1.2-20\mtl\reverse_iter.h(44) : error C2977: 
'std::reverse_iterator' : too many template arguments
         c:\Program Files\Microsoft Visual Studio 
.NET\Vc7\include\xutility(723) : see declaration of 'std::reverse_iterator'
         d:\mtl-2.1.2-20\mtl\reverse_iter.h(83) : see reference to class 
template instantiation 'mtl::reverse_iter<Iter>' being compiled
d:\mtl-2.1.2-20\mtl\reverse_iter.h(46) : error C2977: 
'std::reverse_iterator' : too many template arguments
         c:\Program Files\Microsoft Visual Studio 
.NET\Vc7\include\xutility(723) : see declaration of 'std::reverse_iterator'
d:\mtl-2.1.2-20\mtl\dense_iterator.h(171) : error C2976: 'std::_Ranit' : 
too few template arguments
         c:\Program Files\Microsoft Visual Studio 
.NET\Vc7\include\xutility(86) : see declaration of 'std::_Ranit'
         d:\mtl-2.1.2-20\mtl\dense_iterator.h(278) : see reference to class 
template instantiation 'mtl::dense_iterator<T,,,SizeType>' being compiled




David Johnson
Cullimore and Ring Tech., Inc.
Voice: 303-471-9622
Fax: 303-971-0035
[email protected]
http://www.crtech.com

Hot engineering .... Cool software (tm)
.........................................................................

_______________________________________________
This list is archived at http://www.osl.iu.edu/MailArchives/mtl-devel/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.