| OLD | NEW |
| 1 ########################## | 1 ########################## |
| 2 Frequently Asked Questions | 2 Frequently Asked Questions |
| 3 ########################## | 3 ########################## |
| 4 | 4 |
| 5 .. contents:: | 5 .. contents:: |
| 6 :local: | 6 :local: |
| 7 :backlinks: none | 7 :backlinks: none |
| 8 :depth: 2 | 8 :depth: 2 |
| 9 | 9 |
| 10 This document answers some frequently asked questions about Native | 10 This document answers some frequently asked questions about Native |
| (...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 it's platform-independent, and we'd like it to stay that way. | 228 it's platform-independent, and we'd like it to stay that way. |
| 229 | 229 |
| 230 .. _other_languages: | 230 .. _other_languages: |
| 231 | 231 |
| 232 Do I have to use C or C++? I'd really like to use another language. | 232 Do I have to use C or C++? I'd really like to use another language. |
| 233 ------------------------------------------------------------------- | 233 ------------------------------------------------------------------- |
| 234 | 234 |
| 235 Right now only C and C++ are supported directly by the toolchain in the SDK. C# | 235 Right now only C and C++ are supported directly by the toolchain in the SDK. C# |
| 236 and other languages in the .NET family are supported via the `Mono port`_ for | 236 and other languages in the .NET family are supported via the `Mono port`_ for |
| 237 Native Client. Moreover, there are several ongoing projects to support | 237 Native Client. Moreover, there are several ongoing projects to support |
| 238 additional language runtimes (e.g. `naclports supports Lua, Python and Ruby`_) | 238 additional language runtimes (e.g. `webports includes Lua, Python and Ruby`_) |
| 239 as well as to compile more languages to LLVM's intermediate representation | 239 as well as to compile more languages to LLVM's intermediate representation |
| 240 (e.g. support Halide_, Haskell with GHC_ or support Fortran with flang_), or | 240 (e.g. support Halide_, Haskell with GHC_ or support Fortran with flang_), or |
| 241 transpile languages to C/C++ (source-to-source compilation). Even JavaScript is | 241 transpile languages to C/C++ (source-to-source compilation). Even JavaScript is |
| 242 supported by compiling V8_ to target PNaCl. | 242 supported by compiling V8_ to target PNaCl. |
| 243 | 243 |
| 244 The PNaCl toolchain is built on LLVM and can therefore generate code from | 244 The PNaCl toolchain is built on LLVM and can therefore generate code from |
| 245 languages such as Rust_, Go_, or Objective-C, but there may still be a few rough | 245 languages such as Rust_, Go_, or Objective-C, but there may still be a few rough |
| 246 edges. | 246 edges. |
| 247 | 247 |
| 248 If you're interested in getting other languages working, please contact the | 248 If you're interested in getting other languages working, please contact the |
| (...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 447 application would not be portable across operating systems. Instead, | 447 application would not be portable across operating systems. Instead, |
| 448 Native Client provides portable cross-OS abstractions wrapping or | 448 Native Client provides portable cross-OS abstractions wrapping or |
| 449 proxying OS functionality or emulating UNIX system calls. For example, | 449 proxying OS functionality or emulating UNIX system calls. For example, |
| 450 Native Client provides an ``mmap()`` system call that behaves much like | 450 Native Client provides an ``mmap()`` system call that behaves much like |
| 451 the standard UNIX ``mmap()`` system call. | 451 the standard UNIX ``mmap()`` system call. |
| 452 | 452 |
| 453 Is my favorite third-party library available for Native Client? | 453 Is my favorite third-party library available for Native Client? |
| 454 --------------------------------------------------------------- | 454 --------------------------------------------------------------- |
| 455 | 455 |
| 456 Google has ported several third-party libraries to Native Client; such libraries | 456 Google has ported several third-party libraries to Native Client; such libraries |
| 457 are available in the naclports_ project. We encourage you to contribute | 457 are available in the webports_ project. We encourage you to contribute |
| 458 libraries to naclports, and/or to host your own ported libraries, and to let the | 458 libraries to webports, and/or to host your own ported libraries, and to let the |
| 459 team know about it on native-client-discuss_ when you do. You can also read | 459 team know about it on native-client-discuss_ when you do. You can also read |
| 460 through :doc:`contributor ideas <reference/ideas>` to find ideas of new projects | 460 through :doc:`contributor ideas <reference/ideas>` to find ideas of new projects |
| 461 to port. | 461 to port. |
| 462 | 462 |
| 463 Do all the files in an application need to be served from the same domain? | 463 Do all the files in an application need to be served from the same domain? |
| 464 -------------------------------------------------------------------------- | 464 -------------------------------------------------------------------------- |
| 465 | 465 |
| 466 The ``.nmf``, and ``.nexe`` or ``.pexe`` files must either be served from the | 466 The ``.nmf``, and ``.nexe`` or ``.pexe`` files must either be served from the |
| 467 same origin as the embedding page or an origin that has been configured | 467 same origin as the embedding page or an origin that has been configured |
| 468 correctly using CORS_. | 468 correctly using CORS_. |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 580 * If things still aren't working, :doc:`ask for help <help>`! | 580 * If things still aren't working, :doc:`ask for help <help>`! |
| 581 | 581 |
| 582 | 582 |
| 583 .. _`PNaCl SIMD: Speed on the Web`: https://www.youtube.com/watch?v=675znN6tntw&
list=PLOU2XLYxmsIIwGK7v7jg3gQvIAWJzdat_ | 583 .. _`PNaCl SIMD: Speed on the Web`: https://www.youtube.com/watch?v=675znN6tntw&
list=PLOU2XLYxmsIIwGK7v7jg3gQvIAWJzdat_ |
| 584 .. _Adapting Software Fault Isolation to Contemporary CPU Architectures: https:/
/nativeclient.googlecode.com/svn/data/site/NaCl_SFI.pdf | 584 .. _Adapting Software Fault Isolation to Contemporary CPU Architectures: https:/
/nativeclient.googlecode.com/svn/data/site/NaCl_SFI.pdf |
| 585 .. _`Native Client: A Sandbox for Portable, Untrusted x86 Code`: http://research
.google.com/pubs/pub34913.html | 585 .. _`Native Client: A Sandbox for Portable, Untrusted x86 Code`: http://research
.google.com/pubs/pub34913.html |
| 586 .. _Crouton: https://github.com/dnschneid/crouton | 586 .. _Crouton: https://github.com/dnschneid/crouton |
| 587 .. _experimental development environment which runs within NaCl: https://www.you
tube.com/watch?v=OzNuzBDEWzk&list=PLOU2XLYxmsIIwGK7v7jg3gQvIAWJzdat_ | 587 .. _experimental development environment which runs within NaCl: https://www.you
tube.com/watch?v=OzNuzBDEWzk&list=PLOU2XLYxmsIIwGK7v7jg3gQvIAWJzdat_ |
| 588 .. _introduction to GCC: https://www.google.com/search?q=gcc+introduction | 588 .. _introduction to GCC: https://www.google.com/search?q=gcc+introduction |
| 589 .. _Mono port: https://github.com/elijahtaylor/mono | 589 .. _Mono port: https://github.com/elijahtaylor/mono |
| 590 .. _naclports supports Lua, Python and Ruby: https://code.google.com/p/naclports
/source/browse#svn%2Ftrunk%2Fsrc%2Fexamples%2Ftools | 590 .. _webports includes Lua, Python and Ruby: https://chromium.googlesource.com/we
bports |
| 591 .. _Halide: http://halide-lang.org/ | 591 .. _Halide: http://halide-lang.org/ |
| 592 .. _GHC: http://www.haskell.org/ghc/docs/latest/html/users_guide/code-generators
.html | 592 .. _GHC: http://www.haskell.org/ghc/docs/latest/html/users_guide/code-generators
.html |
| 593 .. _flang: https://flang-gsoc.blogspot.ie/2013/09/end-of-gsoc-report.html | 593 .. _flang: https://flang-gsoc.blogspot.ie/2013/09/end-of-gsoc-report.html |
| 594 .. _V8: https://code.google.com/p/v8/ | 594 .. _V8: https://code.google.com/p/v8/ |
| 595 .. _Rust: http://www.rust-lang.org/ | 595 .. _Rust: http://www.rust-lang.org/ |
| 596 .. _Go: https://golang.org | 596 .. _Go: https://golang.org |
| 597 .. _native-client-discuss: https://groups.google.com/group/native-client-discuss | 597 .. _native-client-discuss: https://groups.google.com/group/native-client-discuss |
| 598 .. _deprecated in Chrome: http://blog.chromium.org/2013/09/saying-goodbye-to-our
-old-friend-npapi.html | 598 .. _deprecated in Chrome: http://blog.chromium.org/2013/09/saying-goodbye-to-our
-old-friend-npapi.html |
| 599 .. _OpenGL ES 2.0: https://www.khronos.org/opengles/ | 599 .. _OpenGL ES 2.0: https://www.khronos.org/opengles/ |
| 600 .. _GLES2 file: https://code.google.com/p/chromium/codesearch#chromium/src/ppapi
/lib/gl/gles2/gles2.c | 600 .. _GLES2 file: https://code.google.com/p/chromium/codesearch#chromium/src/ppapi
/lib/gl/gles2/gles2.c |
| 601 .. _Google Chrome privacy policy: https://www.google.com/chrome/intl/en/privacy.
html | 601 .. _Google Chrome privacy policy: https://www.google.com/chrome/intl/en/privacy.
html |
| 602 .. _Google Chrome Terms of Service: https://www.google.com/chrome/intl/en/eula_t
ext.html | 602 .. _Google Chrome Terms of Service: https://www.google.com/chrome/intl/en/eula_t
ext.html |
| 603 .. _naclports: https://code.google.com/p/naclports | 603 .. _webports: https://chromium.googlesource.com/webports |
| 604 .. _CORS: http://en.wikipedia.org/wiki/Cross-origin_resource_sharing | 604 .. _CORS: http://en.wikipedia.org/wiki/Cross-origin_resource_sharing |
| OLD | NEW |