Smithpd wrotes:In addition to configuring Visual Studio to use 'x64 Compiler and Tools', you must also install a 64 bit Intel compiler. To cross compile from IA32 development platform to X64 target platform you need Intel's 'Product for IA-32/Intel 64'. If you have only 'Product for IA-32' installed, the cross compiler is hidden and will not be available, even when using the Microsoft compiler. I would suggest getting everything to run first using the Microsoft compiler alone and then switching it to the Intel compiler after that worksthe fullarticle you find there:hoping this can help youheinz. You do need to find where to change your project to X64; it's not entirely obvious to me either; I don't do this often.
All your objects and libraries need to be built with /machine:X64 (or AMD64). When you switch to X64, it should automatically want to rebuild everything where you have source, but won't necessarily take care of 32-bit libraries and objects you may have in the project.Maybe someone here could be of more help if you attach a complete build log, after you get into X64 mode.I don't think the defines are a problem, although they may change slightly if you get the project set to X64. 1- Rebuild All started: Project: mm, Configuration: Debug Win32 -1Deleting intermediate files and output files for project 'mm', configuration 'Debug Win32'.1Compiling with Intel C 11.1.054 IA-32. (Intel C Environment)1helloWorldCmd.cpp1Compiling manifest to resources. (Microsoft VC Environment)1Microsoft Windows Resource Compiler Version 6.1.6723.111Copyright (C) Microsoft Corporation. All rights reserved.111Linking.
Dave,It says in the heading - Visual Studio express 2008. That is the version I am currently using.If you go to About Microsoft Visual Studio on the Help menu, it will tell you at the top which version you are using. At least, my version (Team System) does.But why do you not know which version you have? Did you pay for it? If not, you probably have the free Express edition, which does not have the x64 compiler (or MFC).Edit: Oops, sorry, you said Express. Need my glasses checked.If you are using the Express version, you can upgrade to Visual Studio 2013 for free, See these links for a discussion of 64-bit compilation in VS2013 Express.It seems that VS2013 Express does include the 'X86 x64 cross-compiler' which can produce a x64 executable. You need to get the Professional version in order to get the '64-bit x64 compiler' in which the compiler itself is a 64-bit program.But the Visual Studio IDE is always a 32-bit program.David Wilkinson Visual C MVP.
The option to install a 64 bit compiler is not availableDo you know if there is a more recent version that comes with the 64 bit compiler? I can just download that version in order to get the compiler.So you do have the Express version? I so, If do not know if you can get the 64-bit compiler separately and incorporate it into Visual Studio.Why are you so keen to produce a 64-bit version of your application? Most applications (including Visual Studio itself) run perfectly well as 32-bit applications (on a 64-bit OS).The main benefit of 64-bit is the ability to access more memory. Does your application need a lot of memory?David Wilkinson Visual C MVP. Dave,I need 64 bit because my project requires 4GB of ram.Back to the question at handWhy doesn't Microsoft package the vs2008 with the 64 bit compiler.I have been searching through the internet to find a solution and it is littered with complaints from people having the same problem as me.A better solution is have Microsoft fix a known issueI have asked you twice already which version of VS2008 you have.
It seems that you need Professional version or above to get the 64-bit compiler.Microsoft is not going to fix anything in VS2008 at this time. VS2010, 2012, 2013 and almost 2014 have been released since then. Why are you not using one of these later versions?David Wilkinson Visual C MVP. Dave,It says in the heading - Visual Studio express 2008. That is the version I am currently using.If you go to About Microsoft Visual Studio on the Help menu, it will tell you at the top which version you are using. At least, my version (Team System) does.But why do you not know which version you have? Did you pay for it?
If not, you probably have the free Express edition, which does not have the x64 compiler (or MFC).Edit: Oops, sorry, you said Express. Need my glasses checked.If you are using the Express version, you can upgrade to Visual Studio 2013 for free, See these links for a discussion of 64-bit compilation in VS2013 Express.It seems that VS2013 Express does include the 'X86 x64 cross-compiler' which can produce a x64 executable. You need to get the Professional version in order to get the '64-bit x64 compiler' in which the compiler itself is a 64-bit program.But the Visual Studio IDE is always a 32-bit program.David Wilkinson Visual C MVP.