What is the difference between Developer Command Prompt and x64 Native Tools Command Prompt of Visual Studio in 64bit Windows?
The important environment variables set in x64 Native Tools Command Prompt are
- is_x64_arch=true
- LIB=C:\Microsoft Visual Studio\…..\lib\x64
- LIBPATH=C:\Microsoft Visual Studio\…..\lib\x64
- Path=C:\Microsoft Visual Studio\…\bin\HostX64\x64
- Platform=x64
- PROCESSOR_ARCHITECTURE=AMD64
- VSCMD_ARG_HOST_ARCH=x64
- VSCMD_ARG_TGT_ARCH=x64
- __DOTNET_ADD_64BIT=1
- __DOTNET_PREFERRED_BITNESS=64
The following important environment variables are set in Developer Command Prompt:
- LIB=C:\Microsoft Visual\…\lib\x86
- LIBPATH=C:\Microsoft Visual\…\lib\x86
- Path=C:\Microsoft Visual\…\bin\HostX86\x86
- PROCESSOR_ARCHITECTURE=AMD64
- VSCMD_ARG_HOST_ARCH=x86
- VSCMD_ARG_TGT_ARCH=x86
- WindowsSDK_ExecutablePath_x64=C:\Program Files (x86)….\ Tools\x64\
- WindowsSDK_ExecutablePath_x86=C:\Program Files (x86)….\ Tools\
- __DOTNET_ADD_32BIT=1
- __DOTNET_PREFERRED_BITNESS=32
So Developer Command Prompt is supposed to build a program that is hosted on x86 machine that will generate 32bit binaries, while x64 Native Tools Command Prompt is supposed to build a program that is hosted on x64 machine that will generate 64bit binaries.