How to add x64 (or Any CPU) as a build option in Visual Studio 2010 (from console application to class library)

Ryan Hayes picture Ryan Hayes · Nov 30, 2011 · Viewed 48.5k times · Source

Initially, I created a console application using Mass Transit as my service bus. Recently, I switched to NServiceBus, which doesn't require you to make a console application, but a class library instead. In the project properties, I simply switched the setting that changes it from a console application to a library, but the constraint that you can only build it for x86 is still in effect.

I can't change the build type to Any CPU now that it is a console application, which should now be valid. Is there any way to completely change my application to a class library so that I can run the build Any CPU option? Do I need to create a new project, copy files into it and continue that way? Or is it as simple as changing something in the project (.proj) file?

The Stack Overflow question Missing Debug|Any CPU build configuration for projects and defaulting to Debug|x86 on Windows x64 gives more context around this issue of x86 only for console applications.

Answer

Gerald picture Gerald · Dec 1, 2011

You just need to add a configuration for Any CPU in the configuration manager.

1) Right-click the solution and select Properties

2) Select Configuration Properties, then click Configuration Manager...

3) Change the Active Solution platform to Any CPU. If there is no Any CPU platform, skip to #4.

4) Click the arrow in the combo box under the Platform column for your class library, and select New...

5) Make sure "Any CPU" is selected under New Platform. If there was no Any CPU solution platform in step 3, then make sure the "Create new solutions platform" checkbox is checked. Then click OK.

6) Check the checkbox in the "Build" column for your class library

7) Close out of the Configuration Manager, and open the properties for your class library

8) Select Any CPU for Platform, then select Any CPU for Platform target, and save.

(Step 8 may or may not be necessary, depending on what has been done with the configurations previously.)