-Quick guide
-===========
-
-Prerequistites (see end of file for gclient & svn paths)
---------------
-1. Naclports from SVN
- - needed for nacl toolchain (nacl-gcc, etc.)
- - needed for packages (zlib for nacl, etc.)
-2. Native Client repo from SVN
- - currently needed for sel_ldr
-3. Mono with NaCl support (you have it if you're reading this file)
-
-4. Directory conventions used in this document
-(your directories may differ...)
- ~/naclports Naclports repo from SVN
- ~/nacl Native Client repo from SVN
- ~/mono Mono for NaCl
-
-5. Setting your environment:
- export NACL_SDK_PATH=/home/username/naclports
- export NACL_PATH=/home/username/nacl
-5a. Make sure you have a dbg sel_ldr available
- /home/username/nacl/
- native_client/scons-out/dbg-${OS_SUBDIR}-x86-${BITSIZE}/staging
-5b. If it is not available, scons build it (substitute
- linux with mac or win as needed)
- cd /home/username/nacl/native_client
- ./scons MODE=dbg-linux,nacl [platform=x86-64]
-
-6. Build naclports libraries
- cd /home/username/naclports/src/packages
- ./nacl-install-all.sh
-
-7. Build NaCl Mono Runtime ('libmono.a' for NaCl, 5 minutes):
- cd /home/username/mono/trunk/nacl
- ./nacl-runtime-mono.sh [TARGET_BITSIZE=32/64 for cross-compiling runtime]
-
-8. (optional for AOT) Build NaCl Mono Compiler: ('nacl[64]-mono' AOT cross compiler for NaCl, 5 minutes):
- cd /home/username/mono/trunk/nacl
- ./nacl-mono.sh (32-bit cross-compiler)
- ./nacl64-mono.sh (64-bit cross-compiler)
-
-Native Client Mono Install locations:
- /home/username/mono/trunk/nacl/runtime
- /home/username/mono/trunk/nacl/compiler
-
-Normal (not-Native-Client) Mono Install location:
- /home/username/mono/trunk/nacl/normal-mono
-
-Simple Test (requires sel_ldr to run)
- cd /home/username/mono/trunk/nacl/test
- ./nacl [normal,aot,regression] (defaults to nacl,jit,simple test)
-
-
-SVN Repos
-=========
-
-1. Getting Naclports repo
- cd ~
- mkdir naclports
- cd naclports
- gclient config https://naclports.googlecode.com/svn/trunk/src
- gclient sync
-
-2. Getting Native Client repo
-
- cd ~
- mkdir nacl
- cd nacl
- vim .gclient
---------add text below-------
-solutions = [
- { "name" : "native_client",
- "url" : "svn://svn.chromium.org/native_client/trunk/src/native_client",
- },
- { "name" : "supplement.DEPS",
- "url" : "svn://svn.chromium.org/native_client/trunk/deps/supplement.DEPS",
- },
-]
----------end text------------
- gclient sync
- gclient runhooks --force
-
-
-3. Getting Mono repo
-
- cd ~
- mkdir mono
- cd mono
- // see http://mono-project.com/Compiling_Mono_From_Git
-
+Building NaCl Mono with glibc (newlib support is eliminated but should still be buildable with small effort) is complex. Instructions live here for the adventurous: https://docs.google.com/a/google.com/document/d/1Jd_4M7mlmxF8daVbepAy_8RKYcRbhifXanRYyBKkVa4/pub