[Insight-users] ITK compile error on VS2008

Bill Lorensen bill.lorensen at gmail.com
Tue Feb 3 17:42:05 EST 2009


Did you start with a clean build directory? We currently have nightly
builds with the VS2008 compiler.

Bill

On Tue, Feb 3, 2009 at 2:47 PM,  <wang.qian at sjtu.edu.cn> wrote:
> Hi,
>
> I've been using ITK for quite a long time. And my original preference is
> Visual Studio 2003/2005, with CMAKE2.6 and ITK3.2.
>
> I am trying to build a new environment on a new computer. But I've found
> errors when trying to build ITK release. The versions I've tried vary from
> 3.2 to 3.10(latest release), and the new IDE is Visual Studio 2008. But
> there are errors, especially from "itkvcl" project. The list of errors is
> followed:
>
> Error   2       error C2995: 'void vcl_destroy(T *)' : function template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_algobase.h      184
> Error   3       error C2995: 'void vcl_construct(U *,const V &)' : function
> template has already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_algobase.h      193
> Error   4       error C2953: 'std::allocator' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_defalloc.h      83
> Error   5       error C2990: 'std::allocator' : non-class template has
> already been declared as a class template
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_defalloc.h      90
> Error   7       error C2146: syntax error : missing ')' before identifier
> 'x_'    c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  834
> Error   8       error C2470:
> 'rb_tree<Key,Value,KeyOfValue,Compare,Alloc>::__insert' : looks like a
> function definition, but there is no parameter list; skipping apparent body
>    c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  834
> Error   9       error C2072:
> 'rb_tree<Key,Value,KeyOfValue,Compare,Alloc>::__insert' : initialization of
> a function
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  834
> Error   10      error C2059: syntax error : ')'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  836
> Error   11      error C2065: 'Key' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   12      error C2065: 'Value' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   13      error C2065: 'KeyOfValue' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   14      error C2065: 'Compare' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   15      error C2065: 'Alloc' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   16      error C2065: 'Key' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   17      error C2065: 'Value' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   18      error C2065: 'KeyOfValue' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   19      error C2065: 'Compare' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   20      error C2065: 'Alloc' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  865
> Error   21      error C2143: syntax error : missing ';' before '{'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  866
> Error   22      error C2447: '{' : missing function header (old-style formal
> list?)  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  866
> Error   23      error C2065: 'x' : undeclared identifier
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  881
> Error   25      error C2350:
> 'rb_tree<Key,Value,KeyOfValue,Compare,Alloc>::erase' is not a static member
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  887
> Error   26      fatal error C1903: unable to recover from previous error(s);
> stopping compilation
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_tree.h  887
> Error   28      error C2039: 'alloc' : is not a member of 'std'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_alloc.h 512
> Error   29      error C2953: 'std::unary_function' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    67
> Error   30      error C2953: 'std::binary_function' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    75
> Error   31      error C2953: 'std::plus' : class template has already been
> defined c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h
>    81
> Error   32      error C2953: 'std::minus' : class template has already been
> defined c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h
>    87
> Error   33      error C2953: 'std::multiplies' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    93
> Error   34      error C2953: 'std::divides' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    99
> Error   35      error C2953: 'std::modulus' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    105
> Error   36      error C2953: 'std::negate' : class template has already been
> defined c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h
>    111
> Error   37      error C2953: 'std::equal_to' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    117
> Error   38      error C2953: 'std::not_equal_to' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    123
> Error   39      error C2953: 'std::greater' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    129
> Error   40      error C2953: 'std::less' : class template has already been
> defined c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h
>    135
> Error   41      error C2953: 'std::greater_equal' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    141
> Error   42      error C2953: 'std::less_equal' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    147
> Error   43      error C2953: 'std::logical_and' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    153
> Error   44      error C2953: 'std::logical_or' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    159
> Error   45      error C2953: 'std::logical_not' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    165
> Error   46      error C2953: 'std::unary_negate' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    206
> Error   47      error C2953: 'std::binary_negate' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    226
> Error   48      error C2953: 'std::binder1st' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    247
> Error   49      error C2953: 'std::binder2nd' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    269
> Error   50      error C2955: 'std::unary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    282
> Error   51      error C2955: 'std::unary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    303
> Error   52      error C2976: 'std::pointer_to_unary_function' : too few
> template arguments
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    331
> Error   53      error C2976: 'std::pointer_to_binary_function' : too few
> template arguments
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    348
> Error   54      error C2955: 'std::unary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    359
> Error   55      error C2955: 'std::unary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    366
> Error   56      error C2955: 'std::unary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    372
> Error   57      error C2955: 'std::binary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    378
> Error   58      error C2955: 'std::binary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    384
> Error   59      error C2955: 'std::unary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    401
> Error   60      error C2955: 'std::binary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    414
> Error   61      error C2955: 'std::unary_function' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    451
> Error   62      error C2953: 'std::mem_fun_t' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    507
> Error   63      error C2953: 'std::mem_fun1_t' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    521
> Error   64      error C2953: 'std::mem_fun_ref_t' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    535
> Error   65      error C2953: 'std::mem_fun1_ref_t' : class template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_functional.h    550
> Error   66      error C2995: 'void vcl_destroy(T *)' : function template has
> already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_algobase.h      184
> Error   67      error C2995: 'void vcl_construct(U *,const V &)' : function
> template has already been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_algobase.h      193
> Error   68      error C2953: 'std::allocator' : class template has already
> been defined
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_defalloc.h      83
> Error   69      error C2990: 'std::allocator' : non-class template has
> already been declared as a class template
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_defalloc.h      90
> Error   70      error C3203: 'allocator' : unspecialized class template
> can't be used as a template argument for template parameter '_Ax', expected
> a real type     c:\Program Files\Microsoft Visual Studio
> 9.0\VC\include\vector   2385
> Error   71      error C2955: 'std::allocator' : use of class template
> requires template argument list c:\Program Files\Microsoft Visual Studio
> 9.0\VC\include\vector    2385
> Error   72      error C2906: 'vcl_hash<char*>' : explicit specialization
> requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     97
> Error   73      error C2906: 'vcl_hash<const char*>' : explicit
> specialization requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     102
> Error   74      error C2906: 'vcl_hash<char>' : explicit specialization
> requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     106
> Error   75      error C2906: 'vcl_hash<unsigned char>' : explicit
> specialization requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     109
> Error   76      error C2906: 'vcl_hash<signed char>' : explicit
> specialization requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     112
> Error   77      error C2906: 'vcl_hash<short>' : explicit specialization
> requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     115
> Error   78      error C2906: 'vcl_hash<unsigned short>' : explicit
> specialization requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     118
> Error   79      error C2906: 'vcl_hash<int>' : explicit specialization
> requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     121
> Error   80      error C2906: 'vcl_hash<unsigned int>' : explicit
> specialization requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     124
> Error   81      error C2906: 'vcl_hash<long>' : explicit specialization
> requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     127
> Error   82      error C2906: 'vcl_hash<unsigned long>' : explicit
> specialization requires 'template <>'
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     130
> Error   83      error C3203: 'allocator' : unspecialized class template
> can't be used as a template argument for template parameter '_Ax', expected
> a real type
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     264
> Error   84      error C2955: 'std::allocator' : use of class template
> requires template argument list
>  c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     264
> Error   85      error C2838: 'distance' : illegal qualified name in member
> declaration
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     482
> Error   86      fatal error C1903: unable to recover from previous error(s);
> stopping compilation
> c:\insighttoolkit-3.2.0\utilities\vxl\vcl\emulation\vcl_hashtable.h     482
>
>
> I hope someone could give me suggestions. Thank you all very much!
>
> Best wishes,
> Qian
>
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>


More information about the Insight-users mailing list