Native Client

News & Announcements

This page provides the latest news and information about Native Client (including announcements issued subsequent to Pepper 20).

PNaCl enabled by default in Chrome 30 Dev channel

Aug 1, 2013

PNaCl is now enabled by default in Chrome 30 (currently in the Dev channel). In this version, Chrome can run PNaCl applications from the open web without requiring special flags.

Update: PNaCl is not enabled by default in beta or stable versions of M30. For more details see the release notes.

Portable Native Client (PNaCl)

May 15, 2013

Portable Native Client (PNaCl, pronounced "pinnacle"), is an architecture-independent version of Native Client. Traditional C and C++ development uses a "compile → link" workflow that produces a platform- and architecture-dependent executable. In contrast, PNaCl development uses an LLVM compiler infrastructure with a "compile → link → translate" workflow. This workflow produces a "linked" binary that is provided as intermediate representation (IR) bitcode; the bitcode is then translated locally for a specific end-user system architecture. In conjunction with Native Client's POSIX-like environment and the Pepper API for media interfaces, PNaCl provides complete platform independence. With PNaCl, developers can create a single executable for all users. Because translation happens at the client, developers get the benefit of translations for new architectures, as well as new translation optimizations, for free, as such features become available and without the need to rebuild their applications. Once PNaCl is fully released, users will be able to run PNaCl modules on any web page – applications will not need to be deployed through the Chrome Web Store in order to run PNaCl modules.

For background information about PNacl, see PNaCl: Portable Native Client Executables (PDF). For current release information, see the release notes.

Pepper 27 available

April 12, 2013

The Pepper 27 bundle features a significant number of new libraries that have been incorporated directly into the SDK.

For additional information about Pepper 27, see the SDK release notes.

Pepper 26 available

March 29, 2013

The Pepper 26 bundle includes a new HTTP filesystem type in the nacl_mounts library (which has been renamed nacl_io), changes to the example Makefiles, a simple new 3D example, and a threaded file IO example.

For additional information about Pepper 26, see the SDK release notes.

Pepper 25 available

December 21, 2012

The Pepper 25 bundle features an ARM toolchain to build Native Client modules for ARM devices, two new Pepper APIs (including the MessageLoop API, which lets you make Pepper calls on background threads), two new libraries (nacl_mounts, which provides a virtual file system that you can use with standard C file operations, and ppapi_main, which lets you implement a Native Client module using a simple ppapi_main function), and two new examples that demonstrate how to use the nacl_mounts and ppapi_main libraries.

For additional information about Pepper 25, see the SDK release notes.

Native Client Acceleration Modules

December 14, 2012

Developer Programs Engineer John McCutchan recently recorded a Google Developers Live talk describing Native Client acceleration modules, a technique using Native Client that lets you easily define a JavaScript API to communicate with C/C++ code. You can find a link to the video and source code at Recent talks and demos.

Native Client Add-in for Visual Studio is available

October 19, 2012

The Native Client Visual Studio add-in is now available as a bundle in the Native Client SDK. With the add-in you can develop, run, and debug the code for your Native Client module with the popular Visual Studio development environment. Run a Native Client module as a Pepper plugin (DLL) which can be debugged using the Visual Studio debugger, or as a .nexe file that you can debug with nacl-gdb. Visual Studio compiles and links your program, launches a copy of Chrome running your Native Client application, and attaches the debugger - all with one click. The add-in works with Pepper 23 or higher.

Authentication required

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

Signing you in...

Google Developers needs your permission to do that.