I’ve got Visual C++ 2008 Express installed on my Windows Vista x64 system and it’s running just fine. Double clicking a project doesn’t work due to UAC and it doesn’t do x64 projects, but at least I’ve got a decent IDE with strong C++ support.
This weekend, however, I had started thinking about doing an x64 build of Ogre3D, a free 3d graphics engine that is continuing to gather highly interesting features such as Blender integration (a 3d modeling toolkit) and a large scale paging terrain addon.
You can do x64 development for free if you install Microsoft’s Windows SDK, but you will have to do without the IDE - and without the project configurations and even without vcbuild.exe, meaning you have to run the compiler, librarian and linker yourself from the command line. Thus, I wrote some NAnt scripts which called these utilities with the arguments Visual C++ 2008 Express was using - with the necessary changes to do an x64 build of course.
This worked fine, but writing a complete build system from scratch isn’t exactly a pleasing experience and while I did get the job done, enough at least to build x64 binaries of the FreeImage library (which already is no small feat if you, like me, want to integrate the latest versions of the libpng, libmng, libtiff, jpeg, openjpeg and openexr libraries).
Then I remembered that there was an trial version of Visual Studio 2008 Professional available for download. I downloaded it, installed and… no x64 project configurations were available. In fact, I couldn’t even add another project configuration.
I know how to set up an x64 project because at work, I’ve got Visual Studio 2008 Professional on my workstation and among all the Smart Device platforms, I can select x64 as the target platform. No so in this case.
Another 30 minutes later I had uninstalled everything (Uninstalling Visual Studio 2008 leaves most of the Visual Studio packages on your system as it turns out) and went on to reinstall Visual Studio 2008 a second time, again making sure that I had ticked the x64 compiler and libraries.
Visual Studio 2008 installed, I could create a new project, but again, no way to create an x64 project, let alone select any configuration between an Win32, standard x86 build.
Well, if Microsoft intended the trial to get me interested in buying Visual Studio 2008 Standard (or even Visual Studio 2008 Professional): you failed, miserably.
I suspect the problem is that if you already have installed Visual C++ 2008 Express, installing Visual Studio 2008 Professional will leave you without the x64 targets. To validate this theory however, I’d have to reinstall Windows Vista which I… erm… don’t feel like doing right now.
April 18th, 2008 at 9:22 am
A you shure to select x64 option in the installation dialog? That’s not selected by default. And - another - smart device option is selected by default.
From kind of your telling I think you’ve just maked little mistake - you can check x64 support before (!) you have installed VS2008. Just run installer & choose CUSTOM option in selection. In tree select COMPILER OPTIONS. There you’ll see (or not if not supported) x64 option.
The professional products like this must be installed by professional people, that khows exactly they needs. And, of course, not by default settings from Microsoft.
Seconds erlear this message I’ve just builded x64 project in VS2008 Professinal.
April 18th, 2008 at 11:04 am
Yes I am fully sure.
Have you not read my article?
I went as far and UNINSTALLED everything, then reinstalled just to verify that I didn’t make that error.
What I’m suspecting is:
1. Install VS2008 Professional and select x64 compiler -> works perfectly
2. Install VC++ 2008 Express, then install VS2008 Professional and select x64 compiler -> no x64
-
I know Visual Studio in and out since Visual C++ 5.0. I’ve worked with every version since then and can probably tell you the command line options of the compiler from the top of my head. I’m currently compiling x86, x64 and ARM projects all day long and I’ve been working as a professional software developer for 7 years straight. I’ve reported compiler errors and so far, 100% of them have been confirmed as being actual errors. I think I know what I’m doing here.
May 13th, 2008 at 5:24 pm
I installed team edition on both XP and vista x64.
with the same options.
from some reason, on XP I see x64 configuration and in vista x64 I can not.
very bizzare.
May 14th, 2008 at 9:28 am
OK, found it.
if windows server 2008/vista sp1 platform SDK (v6.1) is installed, and then Visual Studio 2008 installed, then Itanium/x64 compilation may not work (even for existing projects, when I try to compile them this configuration is skipped)
when I uninstalled both Visual Studio 2008 and platform SDK 6.1 with all components, and then reinstalled Visual Studio 2008, evethying worked.
Have fun.
Professional should have this ability too.
May 14th, 2008 at 1:27 pm
*sob* somehow everyone seems to interpret my post as a cry for help. All I wanted to do was bash Microsoft for the bad product testing *g*
So it’s the Windows SDK that confuses the Visual Studio 2008 installer and not Visual C++ 2008 Express.
As I said in my original post, my only goal was to get x64 builds going without requiring the full Visual Studio 2008, which I had already accomplished using some NAnt scripts (as written in the original post). All I wanted VS2008 for was to compare its compiler arguments with those I used in my scripts.
Wasting hours with an obvious and easily reproducible show stopper bug wasn’t exactly my idea of a great user experience, thus I coughed up this post
June 24th, 2008 at 9:28 pm
hello cygon. great to hear about your confidance. i desperately need some help from someone like you. Im basically a musician and i want to develop a vsti plugin (sound sample based software) which can be called from within a host like nuendo or cubase. It needs to be done in c++ which i have acquired and got the vstSDK from steinberg- the guys who invented vst (virtual studio technology). And im still not able to figure out how to start. cud you please please help me with some technical info or some guidelines. i will consider you my angel..
or for that matter anybody who seems to udnerstand my problem.. thanks in advance
July 23rd, 2008 at 1:08 pm
Hi Cygon,
I had exactly the same problem and your blog was the only help I could find on the net.
After wasting several hours trying to work around this issue, I would like to share my solution which I think is simpler than the one suggested by Alon.
It seems that the problem occurs when you install first the SDK 6.1 and then Visual Studio 2008. Bright people at Microsoft seem to lack the resources to test their products decently.
Anyway, what I did is to *repair* the SDK installation and the issue seems to have been solved. So, I went to the Control Panel->Programs and Features->Windows SDK for Server 2008->Repair… and reboot when fnished.
Cheers
July 31st, 2008 at 7:46 am
Thank you Juan!
You’re solution worked for me.
Eric