Questions tagged [google-nativeclient]

Native Client (NaCl) and Portable Native Client (PNaCl) are open-source technologies for executing compiled code in a browser sandbox. PNaCl is portable and preferred but has a few limitations. Questions about the tool chain and SDK for Native Client as well as questions concerning behaviors of the resulting applications should use this tag. Questions involving HTML and JavaScript components used with Native Client may need those tags as well or instead.

The Native Client (NaCl) and Portable Native Client (PNaCl) open-source technologies are designed to run operating system independent, native compiled code securely inside browsers by containing the compiled code in a sandbox. The result is to provide the raw speed needed for browser based applications to compete with traditional software like 3D games, video editing, and other applications. Native Client gives languages like C and C++ the same level of portability and safety that JavaScript provides on the web today.

There are two versions of Native Client: Native Client using the native code of a specific target hardware and Portable Native Client using a portable hardware independent code. The Portable Native Client code is translated to Native Client code for the current hardware at the time it is executed in the sandbox.

Portable Native Client is preferred since one executable can run on multiple hardware while Native Client requires multiple hardware specific versions. However Portable Native Client does have a few limitations and Native Code may be required for a specific application.

A complete application is expected to use Native Client (PNaCl or NaCl) with HTML along with any needed JavaScript and CSS styles (JavaScript and CSS may be included in the HTML file or as separate files). An embed tag with a type of application/x-pnacl for Portable Native Client or application/x-nacl for Native Client is used in an HTML file specifying the application's manifest file to download and start the Native Client application.

Applications may be published through the Chrome Web Store.

From the SDK download page.

Platforms

Native Client supports several operating systems, including Windows, Linux, OSX, and ChromeOS. It supports several architectures including on x86-32, x86-64, ARM, and MIPS.

446 questions
5
votes
2 answers

Calling Windows API from Native Client/Pepper Plugin

My intention is to create a chrome plugin for the windows users. Is that possible to call windows api from Native Client /PPAPI. If possible how?
MGR
  • 313
  • 3
  • 14
5
votes
3 answers

Best way to port c++ game to web

I realize the above question is rather broad so I will narrow it down. I have a simple opengl c++ game engine that lives in a static library (could be converted to a dynamic lib). I have been thinking of ways of getting it to run in web. From what…
DavidColson
  • 8,387
  • 9
  • 37
  • 50
4
votes
5 answers

Is Google Native Client expected to have Mozilla's and Microsoft's support?

Personally I think that Google Native Client is an amazing technology, but has no future without the support from major browsers. Is Native Client expected to be standardized, just like HTML? Would major organisations like Microsoft and Mozilla…
Alon Gubkin
  • 56,458
  • 54
  • 195
  • 288
4
votes
1 answer

Future of native-client after WebAssembly Post-MVP

I am sure after WebAssembly Post-MVP, asm.js will be deprecated. Even now, a few existing asm.js projects already start to use WebAssembly. JS engine (V8) also starts to comiple asm.js to WebAssembly, so even if old projects never migrate, end-users…
John London
  • 1,250
  • 2
  • 14
  • 32
4
votes
1 answer

CMake: Error running link command: %1 is not a valid Win32 application

I'm trying to build a NaCl extension on 64-bit Windows 8.1 using CMake. The same code works on Ubuntu without any problems. Everything goes well until CMake tries to link with this command: cmake -E cmake_link_script link.txt CMake: Error running…
user2061057
  • 962
  • 1
  • 9
  • 20
4
votes
0 answers

How to fix "no member named 'somefunction' in the global namespace"

Environment: Windows 7, Visual Studio 2012, Pepper_34 We have an application that requires parallel processing. We used to use TBB for that. Now porting to PNaCl, we wanted to use this opportunity to switch to using a thread pool built around…
Yves Poissant
  • 147
  • 1
  • 10
4
votes
2 answers

Detect if Chrome NaCl is available

Is there a way to detect if NaCl is available on the current browser? It seems that checking for chrome.app.isInstalled turns into false positive on some non-Chrome browsers
ina
  • 19,167
  • 39
  • 122
  • 201
4
votes
2 answers

pypy in the browser?

Does anyone know of any attempts to get pypy running in the browser? I ask because pypy can target llvm, and there are currently two ways to run llvm in the browser: pnacl and emscripten.
bukzor
  • 37,539
  • 11
  • 77
  • 111
3
votes
1 answer

Can you port a DirectX game to Google Native Client?

It's my first time trying Native Client. I read an article and found each sample about 3D graphics used OpenGL ES 2.0. Can I port a Direct3D game to Native Client, or do I have to rewrite my code with OpenGL ES?
3
votes
2 answers

Building a Native Client app from nothing

What does it take to build a Native Client app from scratch? I have looked into the documentation, and fiddled with several apps, however, I am now moving onto making my own app and I don't see anything related to creating the foundation of a native…
chadb
  • 1,138
  • 3
  • 13
  • 36
3
votes
1 answer

Which IDE should i use for Google's Native Client?

I'm planning to try out Google's NaCL. Which IDE should i use for developing? It would be nice to be able to compile the project from the IDE and run it in Chrome. Some basic debugging would be also very useful.
NagyI
  • 5,907
  • 8
  • 55
  • 83
3
votes
1 answer

HTTP POST request with Google's C++ Native Client

How would one perform a HTTP POST request with Google's C++ Native Client?
awilhite
  • 123
  • 2
  • 9
3
votes
3 answers

Install chrome native client (nacl)

I am trying to install Chrome native client. I went to this https://developer.chrome.com/native-client/sdk/download page to download and install the sdk. I followed the instructions in this page however when I tried to execute the naclsdk list…
3
votes
1 answer

Comparision between HTML5 Canvas 2D and NaCl pp::Graphics2D (performance)

My app makes heavy use of HTML5 Canvas2D. After profiling I've found that highest number of function calls are HTML5 Canvas's .stroke() and .fill() functions. Therefore to further improve the performance of my app I have to optimize drawing on…
Jayesh
  • 51,787
  • 22
  • 76
  • 99
3
votes
1 answer

Porting c++ code (native client) to browser (Web app)

I have a c++ module written using Qt-creator SDK. I want to port this code to run on any webpage without compromising the source-code to end user. User should be able to see the output of this module on any browser(Chrome, Firefox, Safari, Explorer)…
Raju
  • 403
  • 1
  • 6
  • 19
1 2
3
29 30