problem converting old code to visual studio .net

B

Brett

Hi,

I'm having trouble converting an old project to visual studio C++ .net
v7.1.3088

I've updated one of the header files to use #include <iostream>, and used
the std namspace.
After resolving the missing library by adding "-NODEFAULTLIB:msvcirt.lib" to
the linker command line, I get the following link errors:


libmatpm.lib(init.o) : error LNK2019: unresolved external symbol
"__declspec(dllimport) class ostream_withassign cout"
(__imp_?cout@@3Vostream_withassign@@A) referenced in function "int __cdecl
mwMainCommon(int,char const * *,void (__cdecl*)(int,struct mxArray_tag * *
const,int,struct mxArray_tag * * const),int,struct _mexcpp_information *)"
(?mwMainCommon@@YAHHPAPBDP6AXHQAPAUmxArray_tag@@H1@ZHPAU_mexcpp_information@
@@Z)

libmatpm.lib(handler.o) : error LNK2019: unresolved external symbol
"__declspec(dllimport) class ostream_withassign cout"
(__imp_?cout@@3Vostream_withassign@@A) referenced in function "void __cdecl
DefaultError(char const *,unsigned char)" (?DefaultError@@YAXPBDE@Z)

libmatpm.lib(init.o) : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: class ostream & __thiscall
ostream::blush:perator<<(int)" (__imp_??6ostream@@QAEAAV0@H@Z) referenced in
function "class ostream & __cdecl operator<<(class ostream &,class
mwException const &)" (??6@YAAAVostream@@AAV0@ABVmwException@@@Z)


The file "libmatpm.lib" is a static library that is also kind of dated. Is
there any way I can avoid these errors without recompiling my static
libraries, because I don't have access to them?

Thanks in advance,
Brett
 
R

Ronald Laeremans [MSFT]

Sorry, but no. You cannot mix versions of the C and C++ standard libraries
inside one executable image. E.g. in the case of iostreams, the
implementation is completely different.

Ronald Laeremans
Visual C++
 
B

Brett

and there's no way I can use the previous versions of header files:
<iostream.h>?

Brett.
 
R

Ronald Laeremans [MSFT]

Not any supported way at least. And not one that I would personally want to
use in an app that shipped.

Ronald
 
G

Guest

I have the same problem, did you find the solution please?
Hi,

I'm having trouble converting an old project to visual studio C++ .net
v7.1.3088

I've updated one of the header files to use #include <iostream>, and used
the std namspace.
After resolving the missing library by adding "-NODEFAULTLIB:msvcirt.lib" to
the linker command line, I get the following link errors:


libmatpm.lib(init.o) : error LNK2019: unresolved external symbol
"__declspec(dllimport) class ostream_withassign cout"
(__imp_?cout@@3Vostream_withassign@@A) referenced in function "int __cdecl
mwMainCommon(int,char const * *,void (__cdecl*)(int,struct mxArray_tag * *
const,int,struct mxArray_tag * * const),int,struct _mexcpp_information *)"
(?mwMainCommon@@YAHHPAPBDP6AXHQAPAUmxArray_tag@@H1@ZHPAU_mexcpp_information@
@@Z)

libmatpm.lib(handler.o) : error LNK2019: unresolved external symbol
"__declspec(dllimport) class ostream_withassign cout"
(__imp_?cout@@3Vostream_withassign@@A) referenced in function "void __cdecl
DefaultError(char const *,unsigned char)" (?DefaultError@@YAXPBDE@Z)

libmatpm.lib(init.o) : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: class ostream & __thiscall
ostream::blush:perator<<(int)" (__imp_??6ostream@@QAEAAV0@H@Z) referenced in
function "class ostream & __cdecl operator<<(class ostream &,class
mwException const &)" (??6@YAAAVostream@@AAV0@ABVmwException@@@Z)


The file "libmatpm.lib" is a static library that is also kind of dated. Is
there any way I can avoid these errors without recompiling my static
libraries, because I don't have access to them?

Thanks in advance,
Brett

User submitted from AEWNET (http://www.aewnet.com/)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top