You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update docs about current installation issues (#6298) [ci skip]
* update docs regarding #6275 (github changes with SSL that force a newer python version) and #6288 (just mention the emsdk script itself from github, not the binary releases which we don't have a working solution for atm)
* mention zip download from github, and update docs to reflect that binary packages are now available for linux, no need to build from source
* mention Windows Subsystem for Linux
Copy file name to clipboardExpand all lines: site/source/docs/building_from_source/toolchain_what_is_needed.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,7 +23,7 @@ Emscripten tools and dependencies
23
23
A complete Emscripten environment requires the following tools. First test to see if they are already installed using the :ref:`instructions below <toolchain-test-which-dependencies-are-installed>`. Then install any missing tools using the instructions in the appropriate platform-specific build topic (:ref:`building-emscripten-on-linux`, :ref:`building-emscripten-on-windows-from-source`, :ref:`building-emscripten-on-mac-osx-from-source`):
24
24
25
25
- :term:`Node.js` (0.8 or above; 0.10.17 or above to run websocket-using servers in node):
26
-
- :term:`Python` 2.7 (2.7.12 or above preferred)
26
+
- :term:`Python` 2.7.12 or above (Python 3.* may also work, work is ongoing)
27
27
- :term:`Java` (1.6.0_31 or later). Java is optional. It is required to use the :term:`Closure Compiler` (in order to minify your code).
28
28
- :term:`Git` client. Git is required if building tools from source.
29
29
- :term:`Fastcomp` (Emscripten's fork of LLVM and Clang)
Copy file name to clipboardExpand all lines: site/source/docs/getting_started/downloads.rst
+28-42Lines changed: 28 additions & 42 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,43 +4,28 @@
4
4
Download and install
5
5
====================
6
6
7
-
**Emscripten SDK provides the whole Emscripten toolchain in a single package, with integrated support for** :ref:`updating to newer SDKs <updating-the-emscripten-sdk>` **as they are released.**
8
-
9
7
.. tip:: If you are :ref:`contributing <contributing>` to Emscripten you should :ref:`build Emscripten from source <installing-from-source>`.
10
8
11
-
12
-
SDK Downloads
13
-
=============
14
-
15
-
Download one of the SDK installers below to get started with Emscripten development.
16
-
17
-
.. emscripten-sdk-windows-installers:
18
-
19
-
Windows
20
-
-------
21
-
22
-
- `64-bit Emscripten SDK for Windows <https://s3.amazonaws.com/mozilla-games/emscripten/releases/emsdk-portable-64bit.zip>`_ (emsdk-portable-64bit.zip)
23
-
A zipped package of the SDK that does not require system installation privileges. Follow the instructions below to :ref:`install Emscripten SDK on Windows <sdk-installation-instructions>`.
24
-
25
-
Linux and Mac OS X
26
-
------------------
27
-
28
-
.. _emscripten-sdk-linux-osx:
29
-
30
-
- `Emscripten SDK for Linux and OS X <https://s3.amazonaws.com/mozilla-games/emscripten/releases/emsdk-portable.tar.gz>`_ (emsdk-portable.tar.gz)
31
-
A tar.gz archive package of the SDK that does not require system installation privileges. To install, follow the :ref:`platform-specific notes <platform-notes-installation_instructions-SDK>` and the :ref:`general instructions <sdk-installation-instructions>`.
32
-
33
9
.. _sdk-installation-instructions:
34
10
35
11
Installation instructions
36
12
=========================
37
13
38
14
First check the :ref:`Platform-specific notes <platform-notes-installation_instructions-SDK>` below and install any prerequisites.
39
15
40
-
Install or update the SDK using the following steps:
16
+
The core Emscripten SDK (emsdk) driver is a Python script. You can get it for the first time with
17
+
18
+
::
19
+
20
+
# Get the emsdk repo
21
+
git clone https://github.com/juj/emsdk.git
22
+
23
+
# Enter that directory
24
+
cd emsdk
25
+
26
+
.. note:: You can also get the emsdk without git, by selecting "Clone or download => Download ZIP" on the `emsdk GitHub page <https://github.com/juj/emsdk>`_.
41
27
42
-
1. Download and unzip the SDK package to a directory of your choice. This directory will contain the Emscripten SDK.
43
-
#. Open a command prompt inside the SDK directory and run the following :ref:`emsdk <emsdk>` commands to get the latest tools from Github and set them as :term:`active <Active Tool/SDK>`:
28
+
Run the following :ref:`emsdk <emsdk>` commands to get the latest tools from GitHub and set them as :term:`active <Active Tool/SDK>`:
44
29
45
30
::
46
31
@@ -65,9 +50,18 @@ If you change the location of the SDK (e.g. take it to another computer on an US
65
50
Platform-specific notes
66
51
----------------------------
67
52
53
+
Windows
54
+
+++++++
55
+
56
+
#. Install Python 2.7.12 or newer (older versions may not work due to `a GitHub change with SSL <https://github.com/kripken/emscripten/issues/6275>`_).
57
+
58
+
.. note:: Instead of running emscripten on Windows directly, you can use the Windows Subsystem for Linux to run it in a Linux environment.
59
+
68
60
Mac OS X
69
61
++++++++
70
62
63
+
If you use MacOS 10.13.3 or later then you should have a new enough version of Python installed (older versions may not work due to `a GitHub change with SSL <https://github.com/kripken/emscripten/issues/6275>`_). Otherwise you can manually install and use Python 2.7.12 or newer.
64
+
71
65
These instructions explain how to install **all** the :ref:`required tools <toolchain-what-you-need>`. You can :ref:`test whether some of these are already installed <toolchain-test-which-dependencies-are-installed>` on the platform and skip those steps.
72
66
73
67
#. Install the *XCode Command Line Tools*. These are a precondition for *git*.
@@ -94,20 +88,7 @@ Linux
94
88
95
89
.. note:: *Emsdk* does not install any tools to the system, or otherwise interact with Linux package managers. All file changes are done inside the **emsdk/** directory.
96
90
97
-
- The system must have a working :ref:`compiler-toolchain` (because *emsdk* builds software from the source):
98
-
99
-
::
100
-
101
-
#Update the package lists
102
-
sudo apt-get update
103
-
104
-
# Install *gcc* (and related dependencies)
105
-
sudo apt-get install build-essential
106
-
107
-
# Install cmake
108
-
sudo apt-get install cmake
109
-
110
-
- *Python*, *node.js* or *Java* are not provided by *emsdk*. The user is expected to install these beforehand with the *system package manager*:
91
+
- *Python*, *node.js*, *CMake*, and *Java* are not provided by *emsdk*. The user is expected to install these beforehand with the *system package manager*:
111
92
112
93
::
113
94
@@ -116,10 +97,15 @@ Linux
116
97
117
98
# Install node.js
118
99
sudo apt-get install nodejs
100
+
101
+
# Install CMake (optional, only needed for tests and building Binaryen)
102
+
sudo apt-get install cmake
119
103
120
104
# Install Java (optional, only needed for Closure Compiler minification)
121
105
sudo apt-get install default-jre
122
106
107
+
.. note:: You need Python 2.7.12 or newer because older versions may not work due to `a GitHub change with SSL <https://github.com/kripken/emscripten/issues/6275>`_).
108
+
123
109
.. note:: Your system may provide Node.js as ``node`` instead of ``nodejs``. In that case, you may need to also update the ``NODE_JS`` attribute of your ``~/.emscripten`` file.
124
110
125
111
- *Git* is not installed automatically. Git is only needed if you want to use tools from one of the development branches **emscripten-incoming** or **emscripten-master**:
@@ -161,7 +147,7 @@ Type the following in a command prompt ::
161
147
# Activate PATH and other environment variables in the current terminal
162
148
source ./emsdk_env.sh
163
149
164
-
The package manager can do many other maintenance tasks ranging from fetching specific old versions of the SDK through to using the :ref:`versions of the tools on Github<emsdk-master-or-incoming-sdk>` (or even your own fork). Check out all the possibilities in the :ref:`emsdk_howto`.
150
+
The package manager can do many other maintenance tasks ranging from fetching specific old versions of the SDK through to using the :ref:`versions of the tools on GitHub<emsdk-master-or-incoming-sdk>` (or even your own fork). Check out all the possibilities in the :ref:`emsdk_howto`.
0 commit comments