Native Client

Download the Native Client SDK

Follow the steps below to download and install the SDK:

  1. Make sure you have python 2.6 or 2.7 installed, and that the Python executable is in your path.
    • On Mac/Linux, Python is probably preinstalled. Run the command "python -V" in a Terminal window, and make sure that the version of Python you have is 2.6.x or 2.7.x (if it's not, upgrade to one of those versions).
    • On Windows, you may need to install Python. Go to http://www.python.org/download/ and select the latest 2.x version. In addition, be sure to add the Python directory (for example, C:\python27) to the PATH variable. Run the command "python -V" in a Command Prompt window, and verify that the version of Python you have is 2.6.x or 2.7.x.
  2. Download the SDK update utility: nacl_sdk.zip.
  3. Unzip the SDK update utility:
    • On Mac/Linux, run the command "unzip nacl_sdk.zip" in a Terminal window.
    • On Windows, right-click on the .zip file and select "Extract All…". A dialog box will open; enter a location and click "Extract".
    Unzipping the SDK update utility creates a directory called nacl_sdk with the following files and directories:
    • naclsdk (and naclsdk.bat for Windows) – the front end of the update utility, i.e., the command you run to download the latest bundles
    • sdk_cache – a directory with a manifest file that lists the bundles you have already downloaded
    • sdk_tools – the back end of the update utility, also known as the "sdk_tools" bundle
  4. Go to the nacl_sdk directory and run naclsdk with the "list" command to see a list of available bundles.

    On Mac/Linux:

    $ cd nacl_sdk
    $ ./naclsdk list

    On Windows:

    > cd nacl_sdk
    > naclsdk.bat list

    You should see output similar to this:

    Available bundles:
      sdk_tools
        description: Native Client SDK Tools, revision 1.5
        stability: stable
        recommended: yes
        version: 1
        revision: 5
      pepper_14
        description: Chrome 14 bundle, revision 1052
        stability: stable
        recommended: yes
        version: 14
        revision: 1052
      pepper_15
        description: Chrome 15 bundle, revision 1208
        stability: beta
        recommended: no
        version: 15
        revision: 1208
    
    Currently installed bundles:
      sdk_tools
        description: Native Client SDK Tools, revision 1.5
        stability: stable
        recommended: yes
        version: 1
        revision: 5

    This sample output shows that there are three bundles available for download, and that you have already installed the latest revision of the sdk_tools bundle (it was included in the zip file you downloaded). In this example note that the pepper_15 bundle has the "recommended" attribute set to "no", meaning that the bundle is still experimental and not yet recommended for general use.

  5. Run naclsdk with the "update" command to download particular bundles that are available.

    On Mac/Linux:

    $ ./naclsdk update

    On Windows:

    > naclsdk.bat update

    By default, naclsdk only downloads bundles that are recommended. Continuing with the earlier example, the "update" command would only download the sdk_tools and the pepper_14 bundles, since the pepper_15 bundle is not yet recommended. If you want the pepper_15 bundle, you must either ask for it explicitly, or ask to get all of the available bundles. Use one of the commands below for Mac/Linux (for Windows, use naclsdk.bat):

    $ ./naclsdk update pepper_15    # explicitly list the bundle you want to get, or
    $ ./naclsdk update all          # get all available bundles, including experimental bundles

    Continuing with the earlier example, if you run naclsdk with the "update all" command, you should see output similar to this:

    sdk_tools is already up-to-date.
    Updating bundle pepper_14 to version 14, revision 1052
    Updating bundle pepper_15 to version 15, revision 1208

    Note that the toolchain for Mac and Linux is around 150 MB, so the download can take a while, even on a fast Internet connection.

  6. Run naclsdk with the "list" command again; this will show you the list of available bundles and verify which bundles are installed.

    On Mac/Linux:

    $ ./naclsdk list

    On Windows:

    > naclsdk.bat list

    Continuing with the earlier example, if you previously downloaded all of the available bundles, you should see output similar to this:

    Available bundles:
      sdk_tools
        description: Native Client SDK Tools, revision 1.5
        stability: stable
        recommended: yes
        version: 1
        revision: 5
      pepper_14
        description: Chrome 14 bundle, revision 1052
        stability: stable
        recommended: yes
        version: 14
        revision: 1052
      pepper_15
        description: Chrome 15 bundle, revision 1208
        stability: beta
        recommended: no
        version: 15
        revision: 1208
    
    Currently installed bundles:
      sdk_tools
        description: Native Client SDK Tools, revision 1.5
        stability: stable
        recommended: yes
        version: 1
        revision: 5
      pepper_14
        description: Chrome 14 bundle, revision 1052
        stability: stable
        recommended: yes
        version: 14
        revision: 1052
      pepper_15
        description: Chrome 15 bundle, revision 1208
        stability: beta
        recommended: no
        version: 15
        revision: 1208
  7. Running naclsdk with the "update" command again will either verify that your bundles are up-to-date, or download and install the most recent version of recommended bundles.

    On Mac/Linux:

    $ ./naclsdk update

    On Windows:

    > naclsdk.bat update

    Continuing with the earlier example in which the pepper_15 bundle is not yet recommended, you should see output similar to this:

    sdk_tools is already up-to-date.
    pepper_14 is already up-to-date.
  8. To use the SCons build scripts included in the SDK, you must have the NACL_SDK_ROOT variable set in your shell environment. For example, on Windows, set %NACL_SDK_ROOT% to the path where you installed the contents of nacl_sdk.zip.

Next steps:

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.