Unable to compile :ermm: Using Windows 7-64 bit and VC 2008 Express

Hi all, I apologize for starting a new topic, but I’ve been working on this problem and reading through thread after thread and getting virtually nowhere (in my mind)

I just built a new computer with the express purpose of creating and running simulations, I got everything for windows 7 up and running after several attempts, then began to configure the computer to handle CUDA programs.


i7 920 c0 stepping
Asus p6t v2 ??Deluxe?? mobo
PNY geForce 285 GTX
Corsair 1000w psu
6 Gb OCZ ram @ 1333 mHz
(everything else is basically irrelevant (cooling method, etc))

I decided to learn C and CUDA simultaneously, which I figured was reasonable, as I already know Java, Python, and… Assembly for: MIPS processors, PIC ?16F384? I also have a decent understanding of the generic internal workings of compilers

Here is what I’ve done so far, followed by questions I have for the community:


  1. Configured my graphics card to behave as I would expect it to behave…(It didnt originally :no:) downloaded latest drivers, etc

  2. Downloaded and installed CUDA 2.2 drivers for Windows 7 64-bit

  3. Downloaded and installed the CUDA toolkit v 2.2 (I see a new one was released in the past 48 hours, but i dont think that will fix my problem…)

  4. Downloaded and installed the CUDA SDK 2.2.1

  5. Tried to compile sample projects using the nvcc command… get the ~"Cannot find cl.exe… … " error, and subsequently specified where to look using -ccbin

4A-Is there a way to specify where nvcc should look to find the folder containing cl.exe… Is that something i can fix with the PATH env variable? (If so, how?)

  1. Saw in the CUDA “getting started” that “Visual studio/ Visual C” is required, downloaded Visual C++ 2008 Express

  2. Tried to compile using VC 2008 Express , got the dreaded and all powerful " visual studio configuration ‘(Null)’ could be found at…

6A-Why is the visual studio configuration required even when i try to compile using nvcc from the command line when specifying where cl.exe lives?

6B-Which resource/action actually generates the visual studio configuration file?

6C-If the configuration exists somewhere, how do i specify where to look?

6C1 It seems to me that somewhere, either nvcc starts to look for a configuration file, realizes that no file location has been specified, ever, and sets the “configuration” variable to the default of null/void/etc
6C2 NVCC knows exactly where to look, but it tries to open the configuration file, and an exception gets thrown because the file does not exist.

6D-Does the configuration file not get set because the compiler is trying to compile to a 32 bit target machine from a 64 bit compiler (or vice versa?)??

  1. Looked at the build configuration manager, saw the an “x64” option already existed, selected that, tried to rebuild, but instead of failing to build, it decided the best option (lol) was just to skip the entire process

  2. Saw in forums that Visual C++ 2008 Express does not support 64 bit compilers (Which is weird, because when I installed it, i saw the number 64 repeatedly… … When i tried reinstalling it, I got no options for specifying to install 64 bit compilers… so I still have roughly the default configurations)

8A - Has visual c 2008 express been modified to support 64 bit compilation?

  1. I saw the jen’s blog link on how to enable visual c++ 2008 express to compile to 64 bit targets, saw that someone had written a batch file to change the registry entries which tell visual c 2008 express to look for a 64 bit compiler (etc). Downloaded and ran that small tool (After looking at the batch file, of course).

  2. Tried to compile again… no changes… still getting either the null configuration file, or the project is skipped entirely

  3. Discovered that I could only view the project properties when the build configuration platform was set to Win32

  4. Saw that I could set the target machine by going into project>properties>configuration properties>linker>advanced. Set that to MachineX64(/Machine:x64)

  5. Tried to compile again. This time is asked me where to save the UTF-8 Project File (*.vcproj). I specified an (arbitrary, i hope) new file name

13A -Is there somewhere specific I should be saving this project file, should it have a specific name?

14…25) Days of more of the same, reading threads, trying to fix it… … downloading various compiler suites, not knowing what the heck to do with them… mingw, gcc, etc. Tried dev c++… etc

  1. Cried myself to sleep.

  2. Woke up, posted this.


I am LITERALLY willing to do anything to get this working except:
-buying the full version of Visual Studio
-Downgrading to Windows 7 32 bit
-Downgrading to Windows Vista in ANY form
-eating my kidneys

I’m open to reinstalling the entire CUDA suite and any IDE with various settings as many times as it takes

Or… In ABSOLUTE desperation, reinstalling windows…?

Various warnings:

nvcc fatal : Visual Studio configuration file ‘(null)’ could not be found for installation at ‘C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/bin/…/…’
Command line warning D9035 : option ‘Wp64’ has been deprecated and will be removed in a future release

Odd behaviors of Visual C 2008 Express:

-I can only view the project properties if the build configuration platform is set to Win32
-If the build configuration platform is set to x64, then the template_kernel has a red and white circle over the lower right corner of the file icon…
What is the reason for the above behavior?


When does visual studio get the specification for how to process .cu files???