errors building 6.0 project in c++ .net

S

Steve Richter

I have a working 6.0 project. unicode, mfc in static library, WinMain
is the entry proc ...

I open the project in .NET, it is converted ok, now in the build I am
getting errors.

The first error I get is after a change to an object file and then a
build:
LINK: fatal error LNK1104: cannot open file 'libcimtd.lib'

looking on my system, that file only exists in the visual studio 6.0
directory. I dont see it in any project settings, and it is not found
in any of my source files. Why is the .NET compiler looking for that
file?

then I compile another .CPP file in the project and the compiler says
#include <iostream.h>
is no good, file not found. that #include just happens to be hanging
out in my code and is not needed, but if I do need it, what is its
replacement?

and lastly, after a complete rebuild, I get the following:

Compiling resources...
C:\Program Files\Microsoft Visual Studio .NET
2003\Vc7\atlmfc\include/atlconv.h(22) : error RC2188: C:\Program
Files\Microsoft Visual Studio .NET
2003\Vc7\atlmfc\include/atlalloc.h(361) : fatal error RC1017: invalid
integer constant expression

when I double click on the error message, the editor pops me into
atlconv.h and positions the cursor at the #error statement below:

#ifndef __cplusplus
#error ATL requires C++ compilation (use a .cpp suffix)
#endif

any ideas what this error is all about? my .NET project is set to
"not using ATL".

thanks,

Steve Richter
 
C

Carl Daniel [VC++ MVP]

Steve said:
I have a working 6.0 project. unicode, mfc in static library, WinMain
is the entry proc ...

I open the project in .NET, it is converted ok, now in the build I am
getting errors.

The first error I get is after a change to an object file and then a
build:
LINK: fatal error LNK1104: cannot open file 'libcimtd.lib'

looking on my system, that file only exists in the visual studio 6.0
directory. I dont see it in any project settings, and it is not found
in any of my source files. Why is the .NET compiler looking for that
file?

Because your code references it. This file contains the implementation of
"classic IOSTreams".
then I compile another .CPP file in the project and the compiler says
#include <iostream.h>
is no good, file not found. that #include just happens to be hanging
out in my code and is not needed, but if I do need it, what is its
replacement?

"Classic IOStreams" are no longer supported - you need to #include
<iostream>, and make a few changes to your code to use ISO Standard
IOStreams.

-cd
 

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