Native Client Documentation Sitemap
Deprecation of the technologies described here has been announced for platforms other than ChromeOS. Please visit our migration guide for details.
Contents:
- Technical Overview
- Quick-start
- NaCl and PNaCl
- WebAssembly Migration Guide
- Glossary
- Download the Native Client SDK
- Examples
- Release Notes
- Chrome/Pepper 49
- Chrome/Pepper 45 (10 July 2015)
- Chrome/Pepper 43 (03 April 2015)
- Chrome/Pepper 42 (20 February 2015)
- Chrome/Pepper 41 (09 January 2015)
- Chrome/Pepper 40 (November 07 2014)
- Chrome/Pepper 39 (26 September 2014)
- Chrome/Pepper 38 (15 August 2014)
- Chrome/Pepper 37 (20 June 2014)
- Chrome/Pepper 36 (09 May 2014)
- Chrome/Pepper 35 (31 Mar 2014)
- Chrome/Pepper 34 (20 Feb 2014)
- Chrome/Pepper 33 (16 Dec 2013)
- PNaCl enabled by default in Chrome 31 (12 Nov 2013)
- PNaCl in Chrome 30 Dev channel (01 Aug 2013)
- PNaCl (15 May 2013)
- Pepper 27 (12 April 2013)
- Pepper 26 (29 March 2013)
- Pepper 25 (21 December 2012)
- Pepper 24 (5 December 2012)
- Pepper 23 (15 October 2012)
- Pepper 22 (22 August 2012)
- Developer’s Guide
- Tutorial
- C++ Tutorial: Getting Started (Part 1)
- Overview
- Step 1: Download and install the Native Client SDK
- Step 2: Start a local server
- Step 3: Set up the Chrome browser
- Step 4: Stub code for the tutorial
- Step 5: Compile the Native Client module and run the stub application
- Step 6: Modify the JavaScript code to send a message to the Native Client module
- Step 7: Implement a message handler in the Native Client module
- Step 8: Compile the Native Client module and run the application again
- Troubleshooting
- Next steps
- C++ Tutorial: Getting Started (Part 2)
- Development Cycle
- Building
- Running
- Introduction
- Portable Native Client (PNaCl) applications
- Native Client applications and the Chrome Web Store
- Prerequisites
- Requirements
- Technique 1: Local server
- Technique 2: Packaged application loaded as an unpacked extension
- Technique 3: Hosted application loaded as an unpacked extension
- Technique 4: Chrome Web Store application with trusted testers
- Debugging
- Debugging with Visual Studio
- Dynamic Linking and Loading with glibc
- Coding Your Application
- 3D Graphics
- Audio
- Application Structure
- Native Client Modules
- File I/O
- The nacl_io Library
- Messaging System
- Progress Events
- URL Loading
- View Change, Focus, and Input Events
- Distributing Your Application
- Building a NaCl App
- Chrome Dev Summit 2014 - Native Client Codelabs
- What a Difference Python Makes - Codelab
- A Saga of Fire and Water - Codelab
- NaCl Dev Environment
- Community
- Security Contest Archive
- Native Client Security Contest
- Security Contest Terms and Conditions
- Security Contest FAQ
- What is this contest about?
- Where can I get more information on Native Client?
- What people are you looking for?
- How do I sign up?
- What is the process of participating?
- How many prizes are there? What are the prizes?
- Can I sign up as a team? How many people can be a member of my team?
- What will I need to do to win?
- Who is going to judge these entries? Who are these people?
- When can I start submitting issues?
- Registration does not work for me—what can I do?
- I registered as a team but I want to change the team composition by adding or removing members. What should I do?
- I have a previous engagement and I cannot sign up until after the competition starts. Is this ok?
- My team has accepted the Terms and Conditions except for one person who is unavailable / whose email was misspelled / etc. What can I do?
- Can I enter multiple times?
- Why do you need a prize recipient?
- We want to change the prize recipient. What can we do?
- I want to remain anonymous during the contest. Is this possible?
- One of my professors / friends is a judge. Can I participate?
- Can my company be registered as an entrant?
- I never signed up for this contest, but I got an email from you. What is this about?
- I tried to sign up and it seems someone who wants to be a member of my team has already registered with another team. What can we do?
- I lost or never got the email asking me to confirm the Terms and Conditions. What can I do?
- One of our team members rejected the Terms and Conditions. What can we do?
- How are you going to evaluate the submissions?
- Can I include issues I submitted before the contest?
- What is the difference between exploit, issue and summary?
- What issues should I include in the summary?
- Why are you asking for the top 10 issues only?
- My English is not great—will this count against me in the judging process?
- What information do I need to include in the issue submission?
- How do I contest a decision that a bug is a duplicate?
- Why is the Native Client team updating the source code during the contest?
- I forgot to include something in the summary—what can I do?
- Someone from our team submitted a summary on behalf of our team without consulting with everyone else. How can we ensure that the judges will use the previous summary and not the last one?
- Will you be evaluating each exploit separately for every one of the criteria?
- I only found one exploit but I think it is very good. Can I still win?
- How are you going to pick the winners?
- When and how are we going to find out the results of the contest?
- What will Google do with my data?
- I have more questions—where can I get a response?
- I like this project. Are you hiring people to work on it full time?
- How can I get involved in this project besides the contest?
- Why is my country/province excluded from the contest?
- Pepper C API Reference (Stable)
- Pepper C API Reference (Beta)
- Pepper C API Reference (Dev)
- Pepper C++ API Reference (Stable)
- Pepper C API Reference (Beta)
- Pepper C++ API Reference (Beta)
- Pepper C API Reference (Dev)
- Pepper C++ API Reference (Dev)
- Reference
- Contributor Ideas
- PNaCl Bitcode Reference Manual
- Contents Of PNaCl Bitcode Files
- Introduction
- Data Model
- PNaCl Blocks
- PNaCl Records
- Default Abbreviations
- PNaCl Identifiers
- Conventions For Describing Records
- Factorial Example
- Road Map
- Global State
- Global Records
- Types Block
- Globals Block
- Valuesymtab Block
- Module Block
- Constants Blocks
- Function Blocks
- Terminator Instructions
- Integer Binary Instructions
- Floating Point Binary Instructions
- Memory Creation and Access Instructions
- Conversion Instructions
- Comparison Instructions
- Vector Instructions
- Other Instructions
- Memory Blocks and Alignment
- Intrinsic Functions
- Support Functions
- Abbreviations
- PNaCl C/C++ Language Support
- PNaCl Undefined Behavior
- Native Client Manifest (nmf) Format
- Sandbox Internals
- ARM 32-bit Sandbox
- NaCl SFI model on x86-64 systems
- Design Documents
- Publications and Presentations
- Frequently Asked Questions
- Help with NaCl
- SDK version information