# Set environment variables to build with NMAKE

The Microsoft Program Maintenance Utility ([NMAKE.EXE](https://learn.microsoft.com/en-us/cpp/build/reference/nmake-reference?view=msvc-170)) ![devhw](data:image/png;base64,UklGRt4AAABXRUJQVlA4TNIAAAAvD8ADED/BoG0jSe5SXP5I7gkNRG3byLnX4Tn+2K4I2raNw5/iqPxlEwBAGlwuj8BNBPpnsblrANx3P36s+DHQIcQ0dmEfEGPc8WEcCCcO/M2hXv3rDJTcHCTB1es7l9P2UoywA2a3jSW/pp77EhxGkq1E8zjH3R3e/fxjREOI6P8EcH+lqu/oTK/6kS+YwlHVAMjkP0ErP1UNIZZmnsB32Y2lZjNPO7HUUA1HkVWz73lAIiWM6WaegFcHzNOJ3bv89WhdNu1TDx/txhT2np2bzWU=) command-line tool is included with Visual Studio.
NMAKE builds projects based on [commands](https://learn.microsoft.com/en-us/cpp/build/building-on-the-command-line?view=msvc-170) ![devhw](data:image/png;base64,UklGRt4AAABXRUJQVlA4TNIAAAAvD8ADED/BoG0jSe5SXP5I7gkNRG3byLnX4Tn+2K4I2raNw5/iqPxlEwBAGlwuj8BNBPpnsblrANx3P36s+DHQIcQ0dmEfEGPc8WEcCCcO/M2hXv3rDJTcHCTB1es7l9P2UoywA2a3jSW/pp77EhxGkq1E8zjH3R3e/fxjREOI6P8EcH+lqu/oTK/6kS+YwlHVAMjkP0ErP1UNIZZmnsB32Y2lZjNPO7HUUA1HkVWz73lAIiWM6WaegFcHzNOJ3bv89WhdNu1TDx/txhT2np2bzWU=) contained in a makefile description file.

Run `nmake` from the Visual Studio Developer Command Prompt. Use the Developer Command Prompt to set environment variables specific to installed tools, platforms, and SDKs.

1. In Visual Studio, from the **Tools** menu, select **Command Line** &gt; **Developer Command Prompt**.
2. Change directories to the Developer Command Prompt shortcut:

    - For Visual Studio Enterprise:

cd C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Auxiliary\\Build
            Copy to clipboard
    - For Visual Studio Professional:

cd C:\\Program Files\\Microsoft Visual Studio\\2022\\Professional\\VC\\Auxiliary\\Build
            Copy to clipboard
    - For Visual Studio Community

cd C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Auxiliary\\Build
            Copy to clipboard
3. In the command prompt, enter `dir` to display a list of command batch files used to configure path and environment variables for specific build architectures.
These options depend on the Visual Studio workloads and options installed on your machine. Use the following command batch files to configure path and environment variables for specific build architectures:

    | Command file | Host and target architectures |
    | --- | --- |
    | `vcvarsx86_arm.bat` | Use the 32-bit x86-native tools to build Arm code. |
    | `vcvarsamd64_arm.bat` | Use the 64-bit x64-native tools to build Arm code. |
    | `vcvarsx86_arm64.bat` | Use the 32-bit x86-native tools to build Arm64 code. |
    | `vcvarsamd64_arm64.bat` | Use the 64-bit x64-native tools to build Arm64 code. |
    | `vcvarsall.bat` | Use parameters to specify the host and target architectures, Windows SDK, and platform choices. Use the <cite>/help</cite> parameter to view a list of supported options. |

    1. For example, run <cite>vcvarsamd64_arm64.bat`</cite> to use the 64-bit x64-native cross compilation tools to build ARM64 code.

C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build>vcvarsamd64_arm64.bat
            Copy to clipboard

        You should see the following:

C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build>vcvarsamd64_arm64.bat
            
            **********************************************************************
            ** Visual Studio 2022 Developer Command Prompt v17.5.3
            ** Copyright (c) 2022 Microsoft Corporation
            **********************************************************************
            [vcvarsall.bat] Environment initialized for: 'x64_arm64'
            Copy to clipboard
    2. The compiler can be verified with the `cl.exe` command:

C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build>cl.exe
            
            Microsoft (R) C/C++ Optimizing Compiler Version 19.35.32216.1 for ARM64
            Copyright (C) Microsoft Corporation. All rights reserved.
            
            usage: cl [ option... ] filename... [ /link linkoption... ]
            Copy to clipboard

Last Published: Apr 29, 2026

[Previous Topic
Configure build options](https://docs.qualcomm.com/bundle/publicresource/80-62010-1/topics/configure-build-options.md) [Next Topic
Build with clang++/LLVM](https://docs.qualcomm.com/bundle/publicresource/80-62010-1/topics/build-clang-llvm.md)