Hi,
Does anybody know whether it++ is supported with Visual C++ 6.0. I complied it++ ver 3.7.2 with Cygwin, it went fine. But when I run this very simple console application (code below):
-------------------------
testit.cpp
c:\it++3.7.2\include\itconfig.h(65) : error C2995: '<<' : template function has already been defined
c:\program files\microsoft visual studio\vc98\include\complex(345) : see declaration of '<<'
c:\it++3.7.2\include\base\scalfunc.h(117) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\elmatfunc.h(52) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(57) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(62) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(65) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(68) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(71) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(86) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(88) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(99) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(101) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(151) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(153) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(155) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(157) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(159) : error C2039: 'tan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(161) : error C2039: 'tan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(161) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(163) : error C2039: 'asin' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(165) : error C2039: 'asin' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(165) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(167) : error C2039: 'acos' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(169) : error C2039: 'acos' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(169) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(171) : error C2039: 'atan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(173) : error C2039: 'atan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(173) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(186) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(188) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(190) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(192) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(194) : error C2039: 'tanh' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(196) : error C2039: 'tanh' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(196) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(217) : error C2039: 'ceil' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(219) : error C2039: 'ceil' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(219) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(221) : error C2039: 'floor' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(223) : error C2039: 'floor' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(223) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(236) : error C2039: 'fabs' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(238) : error C2039: 'fabs' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(253) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(255) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\random.h(737) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(737) : error C2784: 'class std::complex<_Ty> __cdecl std::cos(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(739) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(739) : error C2784: 'class std::complex<_Ty> __cdecl std::sin(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(751) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(761) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(761) : error C2784: 'class std::complex<_Ty> __cdecl std::cos(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(762) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(762) : error C2784: 'class std::complex<_Ty> __cdecl std::sin(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(775) : error C2784: 'class std::complex<_Ty> __cdecl std::sqrt(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(779) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(779) : error C2784: 'class std::complex<_Ty> __cdecl std::cos(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(780) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(780) : error C2784: 'class std::complex<_Ty> __cdecl std::sin(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
Error executing cl.exe.
testit.exe - 59 error(s), 0 warning(s)
---------------------------------
Can anybody suggest whats wrong? Also, in the installation instrutions, its mentioned that file "itplusplus_debug.lib" is to be added in additional dependecies, where do I find this file? I do have the final output file called libit++.a which was generated while compiling IT++ & making using Cygwin. How do I get to .lib file. I also have other lib files of like liblapack.a, the extension isnt lib though. How do I use them in the studio environment? Is ".a" a valid lib extension in VC?
I'd really appreciate your help.
Thanks,
Parminder
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
Does anybody know whether it++ is supported with Visual C++ 6.0. I complied it++ ver 3.7.2 with Cygwin, it went fine. But when I run this very simple console application (code below):
----------------------
#include "stdafx.h"
#include"stdlib.h"
#include"math.h"
#include"malloc.h"
#include "itbase.h"
using std::cout;
using std::endl;
using namespace itpp;
int main(int argc, char* argv[])
{
printf("Hello World!\n");
return 0;
}
-------------------------
I get the following errors:
-------------------------
testit.cpp
c:\it++3.7.2\include\itconfig.h(65) : error C2995: '<<' : template function has already been defined
c:\program files\microsoft visual studio\vc98\include\complex(345) : see declaration of '<<'
c:\it++3.7.2\include\base\scalfunc.h(117) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\elmatfunc.h(52) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(57) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(62) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(65) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(68) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(71) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double,double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(86) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(88) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(99) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(101) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(151) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(153) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(155) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(157) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(159) : error C2039: 'tan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(161) : error C2039: 'tan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(161) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(163) : error C2039: 'asin' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(165) : error C2039: 'asin' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(165) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(167) : error C2039: 'acos' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(169) : error C2039: 'acos' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(169) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(171) : error C2039: 'atan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(173) : error C2039: 'atan' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(173) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(186) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(188) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(190) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(192) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(194) : error C2039: 'tanh' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(196) : error C2039: 'tanh' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(196) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(217) : error C2039: 'ceil' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(219) : error C2039: 'ceil' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(219) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(221) : error C2039: 'floor' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(223) : error C2039: 'floor' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(223) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(236) : error C2039: 'fabs' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(238) : error C2039: 'fabs' : is not a member of 'std'
c:\it++3.7.2\include\base\elmatfunc.h(253) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\elmatfunc.h(255) : error C2440: 'type cast' : cannot convert from '' to 'double (__cdecl *)(double)'
None of the functions with this name in scope match the target type
c:\it++3.7.2\include\base\random.h(737) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(737) : error C2784: 'class std::complex<_Ty> __cdecl std::cos(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(739) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(739) : error C2784: 'class std::complex<_Ty> __cdecl std::sin(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(751) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(761) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(761) : error C2784: 'class std::complex<_Ty> __cdecl std::cos(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(762) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(762) : error C2784: 'class std::complex<_Ty> __cdecl std::sin(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(775) : error C2784: 'class std::complex<_Ty> __cdecl std::sqrt(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(779) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(779) : error C2784: 'class std::complex<_Ty> __cdecl std::cos(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(780) : error C2784: 'class std::complex<_Ty> __cdecl std::log(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
c:\it++3.7.2\include\base\random.h(780) : error C2784: 'class std::complex<_Ty> __cdecl std::sin(const class std::complex<_Ty> &)' : could not deduce template argument for 'const class std::complex<_Ty> &' from 'double'
Error executing cl.exe.
testit.exe - 59 error(s), 0 warning(s)
---------------------------------
Can anybody suggest whats wrong? Also, in the installation instrutions, its mentioned that file "itplusplus_debug.lib" is to be added in additional dependecies, where do I find this file? I do have the final output file called libit++.a which was generated while compiling IT++ & making using Cygwin. How do I get to .lib file. I also have other lib files of like liblapack.a, the extension isnt lib though. How do I use them in the studio environment? Is ".a" a valid lib extension in VC?
I'd really appreciate your help.
Thanks,
Parminder