OLD | NEW |
1 .. _devcycle-building: | 1 .. _devcycle-building: |
2 | 2 |
3 ######## | 3 ######## |
4 Building | 4 Building |
5 ######## | 5 ######## |
6 | 6 |
7 .. contents:: Table Of Contents | 7 .. contents:: Table Of Contents |
8 :local: | 8 :local: |
9 :backlinks: none | 9 :backlinks: none |
10 :depth: 2 | 10 :depth: 2 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 and it has multiple GCC-based toolchains that are differentiated by target | 87 and it has multiple GCC-based toolchains that are differentiated by target |
88 architectures and C libraries. The single PNaCl toolchain is located | 88 architectures and C libraries. The single PNaCl toolchain is located |
89 in a directory named ``toolchain/<OS_platform>_pnacl``, and the GCC-based | 89 in a directory named ``toolchain/<OS_platform>_pnacl``, and the GCC-based |
90 toolchains are located in directories named | 90 toolchains are located in directories named |
91 ``toolchain/<OS_platform>_<architecture>_<library>``, where: | 91 ``toolchain/<OS_platform>_<architecture>_<library>``, where: |
92 | 92 |
93 * *<platform>* is the platform of your development machine (win, mac, or linux) | 93 * *<platform>* is the platform of your development machine (win, mac, or linux) |
94 * *<architecture>* is your target architecture (x86 or arm) | 94 * *<architecture>* is your target architecture (x86 or arm) |
95 * *<library>* is the C library you are compiling with (newlib or glibc) | 95 * *<library>* is the C library you are compiling with (newlib or glibc) |
96 | 96 |
97 The compilers, linkers, and other tools are located in the ``bin/`` | 97 The compilers, linkers, and other tools are located in the ``bin/`` |
98 subdirectory in each toolchain. For example, the tools in the Windows SDK | 98 subdirectory in each toolchain. For example, the tools in the Windows SDK |
99 for PNaCl has a C++ compiler in ``toolchain/win_pnacl/bin/pnacl-clang++``. | 99 for PNaCl has a C++ compiler in ``toolchain/win_pnacl/bin/pnacl-clang++``. |
100 As another example, the GCC-based C++ compiler that targets the x86 and uses the | 100 As another example, the GCC-based C++ compiler that targets the x86 and uses the |
101 newlib library, is located at ``toolchain/win_x86_newlib/bin/x86_64-nacl-g++``. | 101 newlib library, is located at ``toolchain/win_x86_newlib/bin/x86_64-nacl-g++``. |
102 | 102 |
103 .. Note:: | 103 .. Note:: |
104 :class: note | 104 :class: note |
105 | 105 |
106 The SDK toolchains descend from the ``toolchain/`` directory. The SDK also | 106 The SDK toolchains descend from the ``toolchain/`` directory. The SDK also |
107 has a ``tools/`` directory; this directory contains utilities that are not | 107 has a ``tools/`` directory; this directory contains utilities that are not |
(...skipping 505 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
613 Here is one way to find the appropriate library for a given symbol: | 613 Here is one way to find the appropriate library for a given symbol: |
614 | 614 |
615 .. naclcode:: | 615 .. naclcode:: |
616 :prettyprint: 0 | 616 :prettyprint: 0 |
617 | 617 |
618 <NACL_SDK_ROOT>/toolchain/<platform>_pnacl/bin/pnacl-nm -o \ | 618 <NACL_SDK_ROOT>/toolchain/<platform>_pnacl/bin/pnacl-nm -o \ |
619 toolchain/<platform>_pnacl/usr/lib/*.a | grep <MySymbolName> | 619 toolchain/<platform>_pnacl/usr/lib/*.a | grep <MySymbolName> |
620 | 620 |
621 .. TODO(jvoung): Add some notes about debugging GNU-extensions not | 621 .. TODO(jvoung): Add some notes about debugging GNU-extensions not |
622 .. supported by PNaCl ABI stabilization passes, like computed gotos? | 622 .. supported by PNaCl ABI stabilization passes, like computed gotos? |
OLD | NEW |