OLD | NEW |
1 {{+bindTo:partials.standard_nacl_article}} | 1 {{+bindTo:partials.standard_nacl_article}} |
2 | 2 |
3 <section id="frequently-asked-questions"> | 3 <section id="frequently-asked-questions"> |
4 <h1 id="frequently-asked-questions">Frequently Asked Questions</h1> | 4 <h1 id="frequently-asked-questions">Frequently Asked Questions</h1> |
5 <div class="contents local" id="contents" style="display: none"> | 5 <div class="contents local" id="contents" style="display: none"> |
6 <ul class="small-gap"> | 6 <ul class="small-gap"> |
7 <li><p class="first"><a class="reference internal" href="#what-is-native-client-
good-for" id="id1">What is Native Client Good For?</a></p> | 7 <li><p class="first"><a class="reference internal" href="#what-is-native-client-
good-for" id="id1">What is Native Client Good For?</a></p> |
8 <ul class="small-gap"> | 8 <ul class="small-gap"> |
9 <li><a class="reference internal" href="#why-did-google-build-native-client" id=
"id2">Why did Google build Native Client?</a></li> | 9 <li><a class="reference internal" href="#why-did-google-build-native-client" id=
"id2">Why did Google build Native Client?</a></li> |
10 <li><a class="reference internal" href="#when-should-i-use-portable-native-clien
t-instead-of-native-client" id="id3">When should I use Portable Native Client in
stead of Native Client?</a></li> | 10 <li><a class="reference internal" href="#when-should-i-use-portable-native-clien
t-instead-of-native-client" id="id3">When should I use Portable Native Client in
stead of Native Client?</a></li> |
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
236 cannot adapt to new architectures without recompilation, we therefore | 236 cannot adapt to new architectures without recompilation, we therefore |
237 deem them better suited to a web store than to the open web.</p> | 237 deem them better suited to a web store than to the open web.</p> |
238 <p>With Portable Native Client we deliver a system that has comparable | 238 <p>With Portable Native Client we deliver a system that has comparable |
239 portability to JavaScript and can adapt to new instruction set | 239 portability to JavaScript and can adapt to new instruction set |
240 architectures without requiring recompilation. The web is better when | 240 architectures without requiring recompilation. The web is better when |
241 it’s platform-independent, and we’d like it to stay that way.</p> | 241 it’s platform-independent, and we’d like it to stay that way.</p> |
242 <h3 id="do-i-have-to-use-c-or-c-i-d-really-like-to-use-another-language"><span i
d="other-languages"></span>Do I have to use C or C++? I’d really like to u
se another language.</h3> | 242 <h3 id="do-i-have-to-use-c-or-c-i-d-really-like-to-use-another-language"><span i
d="other-languages"></span>Do I have to use C or C++? I’d really like to u
se another language.</h3> |
243 <p>Right now only C and C++ are supported directly by the toolchain in the SDK.
C# | 243 <p>Right now only C and C++ are supported directly by the toolchain in the SDK.
C# |
244 and other languages in the .NET family are supported via the <a class="reference
external" href="https://github.com/elijahtaylor/mono">Mono port</a> for | 244 and other languages in the .NET family are supported via the <a class="reference
external" href="https://github.com/elijahtaylor/mono">Mono port</a> for |
245 Native Client. Moreover, there are several ongoing projects to support | 245 Native Client. Moreover, there are several ongoing projects to support |
246 additional language runtimes (e.g. <a class="reference external" href="https://c
ode.google.com/p/naclports/source/browse#svn%2Ftrunk%2Fsrc%2Fexamples%2Ftools">n
aclports supports Lua, Python and Ruby</a>) | 246 additional language runtimes (e.g. <a class="reference external" href="https://c
hromium.googlesource.com/webports">webports includes Lua, Python and Ruby</a>) |
247 as well as to compile more languages to LLVM’s intermediate representation | 247 as well as to compile more languages to LLVM’s intermediate representation |
248 (e.g. support <a class="reference external" href="http://halide-lang.org/">Halid
e</a>, Haskell with <a class="reference external" href="http://www.haskell.org/g
hc/docs/latest/html/users_guide/code-generators.html">GHC</a> or support Fortran
with <a class="reference external" href="https://flang-gsoc.blogspot.ie/2013/09
/end-of-gsoc-report.html">flang</a>), or | 248 (e.g. support <a class="reference external" href="http://halide-lang.org/">Halid
e</a>, Haskell with <a class="reference external" href="http://www.haskell.org/g
hc/docs/latest/html/users_guide/code-generators.html">GHC</a> or support Fortran
with <a class="reference external" href="https://flang-gsoc.blogspot.ie/2013/09
/end-of-gsoc-report.html">flang</a>), or |
249 transpile languages to C/C++ (source-to-source compilation). Even JavaScript is | 249 transpile languages to C/C++ (source-to-source compilation). Even JavaScript is |
250 supported by compiling <a class="reference external" href="https://code.google.c
om/p/v8/">V8</a> to target PNaCl.</p> | 250 supported by compiling <a class="reference external" href="https://code.google.c
om/p/v8/">V8</a> to target PNaCl.</p> |
251 <p>The PNaCl toolchain is built on LLVM and can therefore generate code from | 251 <p>The PNaCl toolchain is built on LLVM and can therefore generate code from |
252 languages such as <a class="reference external" href="http://www.rust-lang.org/"
>Rust</a>, <a class="reference external" href="https://golang.org">Go</a>, or Ob
jective-C, but there may still be a few rough | 252 languages such as <a class="reference external" href="http://www.rust-lang.org/"
>Rust</a>, <a class="reference external" href="https://golang.org">Go</a>, or Ob
jective-C, but there may still be a few rough |
253 edges.</p> | 253 edges.</p> |
254 <p>If you’re interested in getting other languages working, please contact
the | 254 <p>If you’re interested in getting other languages working, please contact
the |
255 Native Client team by way of the <a class="reference external" href="https://gro
ups.google.com/group/native-client-discuss">native-client-discuss</a> mailing li
st, and read | 255 Native Client team by way of the <a class="reference external" href="https://gro
ups.google.com/group/native-client-discuss">native-client-discuss</a> mailing li
st, and read |
256 through <a class="reference internal" href="/native-client/reference/ideas.html"
><em>contributor ideas</em></a>.</p> | 256 through <a class="reference internal" href="/native-client/reference/ideas.html"
><em>contributor ideas</em></a>.</p> |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
384 <h3 id="what-unix-system-calls-can-i-make-through-native-client">What UNIX syste
m calls can I make through Native Client?</h3> | 384 <h3 id="what-unix-system-calls-can-i-make-through-native-client">What UNIX syste
m calls can I make through Native Client?</h3> |
385 <p>Native Client doesn’t directly expose any system calls from the host OS | 385 <p>Native Client doesn’t directly expose any system calls from the host OS |
386 because of the inherent security risks and because the resulting | 386 because of the inherent security risks and because the resulting |
387 application would not be portable across operating systems. Instead, | 387 application would not be portable across operating systems. Instead, |
388 Native Client provides portable cross-OS abstractions wrapping or | 388 Native Client provides portable cross-OS abstractions wrapping or |
389 proxying OS functionality or emulating UNIX system calls. For example, | 389 proxying OS functionality or emulating UNIX system calls. For example, |
390 Native Client provides an <code>mmap()</code> system call that behaves much like | 390 Native Client provides an <code>mmap()</code> system call that behaves much like |
391 the standard UNIX <code>mmap()</code> system call.</p> | 391 the standard UNIX <code>mmap()</code> system call.</p> |
392 <h3 id="is-my-favorite-third-party-library-available-for-native-client">Is my fa
vorite third-party library available for Native Client?</h3> | 392 <h3 id="is-my-favorite-third-party-library-available-for-native-client">Is my fa
vorite third-party library available for Native Client?</h3> |
393 <p>Google has ported several third-party libraries to Native Client; such librar
ies | 393 <p>Google has ported several third-party libraries to Native Client; such librar
ies |
394 are available in the <a class="reference external" href="https://code.google.com
/p/naclports">naclports</a> project. We encourage you to contribute | 394 are available in the <a class="reference external" href="https://chromium.google
source.com/webports">webports</a> project. We encourage you to contribute |
395 libraries to naclports, and/or to host your own ported libraries, and to let the | 395 libraries to webports, and/or to host your own ported libraries, and to let the |
396 team know about it on <a class="reference external" href="https://groups.google.
com/group/native-client-discuss">native-client-discuss</a> when you do. You can
also read | 396 team know about it on <a class="reference external" href="https://groups.google.
com/group/native-client-discuss">native-client-discuss</a> when you do. You can
also read |
397 through <a class="reference internal" href="/native-client/reference/ideas.html"
><em>contributor ideas</em></a> to find ideas of new projects | 397 through <a class="reference internal" href="/native-client/reference/ideas.html"
><em>contributor ideas</em></a> to find ideas of new projects |
398 to port.</p> | 398 to port.</p> |
399 <h3 id="do-all-the-files-in-an-application-need-to-be-served-from-the-same-domai
n">Do all the files in an application need to be served from the same domain?</h
3> | 399 <h3 id="do-all-the-files-in-an-application-need-to-be-served-from-the-same-domai
n">Do all the files in an application need to be served from the same domain?</h
3> |
400 <p>The <code>.nmf</code>, and <code>.nexe</code> or <code>.pexe</code> files mus
t either be served from the | 400 <p>The <code>.nmf</code>, and <code>.nexe</code> or <code>.pexe</code> files mus
t either be served from the |
401 same origin as the embedding page or an origin that has been configured | 401 same origin as the embedding page or an origin that has been configured |
402 correctly using <a class="reference external" href="http://en.wikipedia.org/wiki
/Cross-origin_resource_sharing">CORS</a>.</p> | 402 correctly using <a class="reference external" href="http://en.wikipedia.org/wiki
/Cross-origin_resource_sharing">CORS</a>.</p> |
403 <p>For applications installed from the Chrome Web Store the Web Store manifest | 403 <p>For applications installed from the Chrome Web Store the Web Store manifest |
404 must include the correct, verified domain of the embedding page.</p> | 404 must include the correct, verified domain of the embedding page.</p> |
405 <h2 id="portability">Portability</h2> | 405 <h2 id="portability">Portability</h2> |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
491 you’re loading the correct <code>.nexe</code> file by building a separate | 491 you’re loading the correct <code>.nexe</code> file by building a separate |
492 <code>.nexe</code> for each architecture, and using a <code>.nmf</code> manifest
file to | 492 <code>.nexe</code> for each architecture, and using a <code>.nmf</code> manifest
file to |
493 let the browser select the correct <code>.nexe</code> file. Note: the need to | 493 let the browser select the correct <code>.nexe</code> file. Note: the need to |
494 select a processor-specific <code>.nexe</code> goes away with Portable Native | 494 select a processor-specific <code>.nexe</code> goes away with Portable Native |
495 Client.</li> | 495 Client.</li> |
496 <li>If things still aren’t working, <a class="reference internal" href="/n
ative-client/help.html"><em>ask for help</em></a>!</li> | 496 <li>If things still aren’t working, <a class="reference internal" href="/n
ative-client/help.html"><em>ask for help</em></a>!</li> |
497 </ul> | 497 </ul> |
498 </section> | 498 </section> |
499 | 499 |
500 {{/partials.standard_nacl_article}} | 500 {{/partials.standard_nacl_article}} |
OLD | NEW |