HighTechTalks DotNet Forums  

Old iostream Library(vc6 ) and 64bit compilation

VC++.net Libraries microsoft.public.dotnet.languages.vc.libraries


Discuss Old iostream Library(vc6 ) and 64bit compilation in the VC++.net Libraries forum.



Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old   
Ghanashyam
 
Posts: n/a

Default Old iostream Library(vc6 ) and 64bit compilation - 04-14-2009 , 11:29 PM






The following program compiles and executes fine in VC6 compiler.

#include "stdafx.h"
#include <iostream.h>


int main(int argc, char* argv[])
{

cout<< "hello world" << endl;
return 0;
}

When I try to compile it in VS2008 the compiler complains about iostream.h
and however I had an workround. Used the header from VC6 installation and
linked to LIBCIMT.lib and LIBCIMTD.lib coming with VC6.Then the program
compiles and executes fine in 32bit environment. My objective is to compile
this program in 64 bit environment.As the program uses VC6 headers the
compilation goes through but the linker fails with following message.

1>Linking...
1>libcimtd.lib(_ios.obj) : fatal error LNK1112: module machine type 'X86'
conflicts with target machine type 'x64'

As the LIBCI***.lib is still 32 bit so is the cause of the linking failure.

After looking at documentation it seems LIBCI***.lib are no more shipped
with VS2008 and correct procedure is to use the new iostream library
#include <iostream> shipped with VS2008.So it involves changing the code
and legacy code base is quite large too. Is there any other work around to
resolve above issue with minimal code change ?

Thanks
Ghanashyam




Reply With Quote
Reply




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.