x64 Platform build configuration (missing)


#1

Every time i update Juce i have to add the “x64”-Platform, and set up the jucelib_static_x64.lib/jucelib_static_x64_debug.lib Ouput-File.
Wouldn’t it be nice if there are existing by default:

Juce.sln diff

2,3c2,3
< # Visual C++ Express 2008
< Project("{xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx}") = "Juce", "Juce.vcproj", "{xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx}"
---
> # Visual Studio 2008
> Project("{xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx}") = "Juce", "Juce.vcproj", "{xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx}"
7a8
> 		Debug|x64 = Debug|x64
8a10
> 		Release|x64 = Release|x64
12a15,16
> 		{2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Debug|x64.ActiveCfg = Debug|x64
> 		{2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Debug|x64.Build.0 = Debug|x64
14a19,20
> 		{2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Release|x64.ActiveCfg = Release|x64
> 		{2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Release|x64.Build.0 = Release|x64

Juce.vcproj diff

13a14,16
> 		<Platform
> 			Name="x64"
> 		/>
165a169,318
> 		<Configuration
> 			Name="Debug|x64"
> 			OutputDirectory="$(PlatformName)\$(ConfigurationName)"
> 			IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
> 			ConfigurationType="4"
> 			UseOfMFC="0"
> 			ATLMinimizesCRunTimeLibraryUsage="false"
> 			CharacterSet="2"
> 			>
> 			<Tool
> 				Name="VCPreBuildEventTool"
> 			/>
> 			<Tool
> 				Name="VCCustomBuildTool"
> 			/>
> 			<Tool
> 				Name="VCXMLDataGeneratorTool"
> 			/>
> 			<Tool
> 				Name="VCWebServiceProxyGeneratorTool"
> 			/>
> 			<Tool
> 				Name="VCMIDLTool"
> 				TargetEnvironment="3"
> 			/>
> 			<Tool
> 				Name="VCCLCompilerTool"
> 				Optimization="0"
> 				AdditionalIncludeDirectories=""
> 				PreprocessorDefinitions="_LIB;WIN32;_WINDOWS;DEBUG;_DEBUG;JUCER_VS2008_78A5006=1"
> 				RuntimeLibrary="1"
> 				RuntimeTypeInfo="true"
> 				UsePrecompiledHeader="0"
> 				PrecompiledHeaderFile=".\Debug\jucedebug.pch"
> 				AssemblerListingLocation=".\Debug\"
> 				ObjectFile=".\Debug\"
> 				ProgramDataBaseFileName=".\Debug\"
> 				WarningLevel="4"
> 				SuppressStartupBanner="true"
> 				DebugInformationFormat="3"
> 			/>
> 			<Tool
> 				Name="VCManagedResourceCompilerTool"
> 			/>
> 			<Tool
> 				Name="VCResourceCompilerTool"
> 				PreprocessorDefinitions="_DEBUG"
> 			/>
> 			<Tool
> 				Name="VCPreLinkEventTool"
> 			/>
> 			<Tool
> 				Name="VCLibrarianTool"
> 				OutputFile=".\..\..\bin\jucelib_static_x64_debug.lib"
> 				IgnoreDefaultLibraryNames="libcmt.lib, msvcrt.lib"
> 			/>
> 			<Tool
> 				Name="VCALinkTool"
> 			/>
> 			<Tool
> 				Name="VCXDCMakeTool"
> 			/>
> 			<Tool
> 				Name="VCBscMakeTool"
> 				SuppressStartupBanner="true"
> 				OutputFile=".\Debug\jucedebug.bsc"
> 			/>
> 			<Tool
> 				Name="VCFxCopTool"
> 			/>
> 			<Tool
> 				Name="VCPostBuildEventTool"
> 			/>
> 		</Configuration>
> 		<Configuration
> 			Name="Release|x64"
> 			OutputDirectory="$(PlatformName)\$(ConfigurationName)"
> 			IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
> 			ConfigurationType="4"
> 			UseOfMFC="0"
> 			ATLMinimizesCRunTimeLibraryUsage="false"
> 			CharacterSet="2"
> 			WholeProgramOptimization="1"
> 			>
> 			<Tool
> 				Name="VCPreBuildEventTool"
> 			/>
> 			<Tool
> 				Name="VCCustomBuildTool"
> 			/>
> 			<Tool
> 				Name="VCXMLDataGeneratorTool"
> 			/>
> 			<Tool
> 				Name="VCWebServiceProxyGeneratorTool"
> 			/>
> 			<Tool
> 				Name="VCMIDLTool"
> 				TargetEnvironment="3"
> 			/>
> 			<Tool
> 				Name="VCCLCompilerTool"
> 				Optimization="2"
> 				InlineFunctionExpansion="1"
> 				AdditionalIncludeDirectories=""
> 				PreprocessorDefinitions="_LIB;WIN32;_WINDOWS;NDEBUG;JUCER_VS2008_78A5006=1"
> 				StringPooling="true"
> 				RuntimeLibrary="0"
> 				RuntimeTypeInfo="true"
> 				UsePrecompiledHeader="0"
> 				PrecompiledHeaderFile=".\Release\juce.pch"
> 				AssemblerListingLocation=".\Release\"
> 				ObjectFile=".\Release\"
> 				ProgramDataBaseFileName=".\Release\"
> 				WarningLevel="4"
> 				SuppressStartupBanner="true"
> 			/>
> 			<Tool
> 				Name="VCManagedResourceCompilerTool"
> 			/>
> 			<Tool
> 				Name="VCResourceCompilerTool"
> 				PreprocessorDefinitions="NDEBUG"
> 			/>
> 			<Tool
> 				Name="VCPreLinkEventTool"
> 			/>
> 			<Tool
> 				Name="VCLibrarianTool"
> 				OutputFile=".\..\..\bin\jucelib_static_x64.lib"
> 				IgnoreDefaultLibraryNames=""
> 			/>
> 			<Tool
> 				Name="VCALinkTool"
> 			/>
> 			<Tool
> 				Name="VCXDCMakeTool"
> 			/>
> 			<Tool
> 				Name="VCBscMakeTool"
> 				SuppressStartupBanner="true"
> 				OutputFile=".\Release\juce.bsc"
> 			/>
> 			<Tool
> 				Name="VCFxCopTool"
> 			/>
> 			<Tool
> 				Name="VCPostBuildEventTool"
> 			/>
> 		</Configuration>
616a770,785
> 							<FileConfiguration
> 								Name="Debug|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Release|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
636a806,821
> 							<FileConfiguration
> 								Name="Debug|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Release|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
656a842,857
> 							<FileConfiguration
> 								Name="Debug|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Release|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
684a886,901
> 							<FileConfiguration
> 								Name="Debug|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Release|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
704a922,937
> 							<FileConfiguration
> 								Name="Debug|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Release|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
728a962,977
> 							<FileConfiguration
> 								Name="Debug|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Release|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
750a1000,1015
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Debug|x64"
> 								ExcludedFromBuild="true"
> 								>
> 								<Tool
> 									Name="VCCLCompilerTool"
> 								/>
> 							</FileConfiguration>
> 							<FileConfiguration
> 								Name="Release|x64"

PS: i think the Preprocessor definition has to be “Win64” instead of Win32?


#2

Yes, it needs to be added to the introjucer - I’ll do it eventually!


#3

Does anyone know if 64-bit is possible in Visual c++ Express 2010 or 2008…? I just tried modifying a project to use 64-bit, but couldn’t figure it out, which is odd because I’m sure I’ve done it before… (?)

(I might just be being slow-witted)


#4

Not sure about VS 2010, but Express 2008 not by default (its a little bit complicated, there is a somewhere a thread about this in this forum)

Its possible with Standard Edition and better, open the solution manager, “Active Solution Platform” -> new -> select “x64”