Skip to content

Commit

Permalink
Merge pull request opencv#15221 from cancerberoSgx:master
Browse files Browse the repository at this point in the history
OpenCv.js docker container build instructions (opencv#15221)

* emscripten docker container

* docker

* typo

* typo

* whitespace issue
  • Loading branch information
cancerberoSgx authored and alalek committed Aug 5, 2019
1 parent 95eb199 commit 59b0314
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions doc/js_tutorials/js_setup/js_setup/js_setup.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ Installing Emscripten

[Emscripten](https://github.com/kripken/emscripten) is an LLVM-to-JavaScript compiler. We will use Emscripten to build OpenCV.js.

@note
While this describes installation of required tools from scratch, there's a section below also describing an alternative procedure to perform the same build using docker containers which is often easier.

To Install Emscripten, follow instructions of [Emscripten SDK](https://kripken.github.io/emscripten-site/docs/getting_started/downloads.html).

For example:
Expand Down Expand Up @@ -103,3 +106,25 @@ Building OpenCV.js from Source

@note
It requires `node` installed in your development environment.

Building OpenCV.js with Docker
---------------------------------------

Alternatively, the same build can be can be accomplished using [docker](https://www.docker.com/) containers which is often easier and more reliable, particularly in non linux systems. You only need to install [docker](https://www.docker.com/) on your system and use a popular container that provides a clean well tested environment for emscripten builds like this, that already has latest versions of all the necessary tools installed.

So, make sure [docker](https://www.docker.com/) is installed in your system and running. The following shell script should work in linux and MacOS:

@code{.bash}
git clone https://github.com/opencv/opencv.git
cd opencv
docker run --rm --workdir /code -v "$PWD":/code "trzeci/emscripten:latest" python ./platforms/js/build_js.py build_js
@endcode

In Windows use the following PowerShell command:

@code{.bash}
docker run --rm --workdir /code -v "$(get-location):/code" "trzeci/emscripten:latest" python ./platforms/js/build_js.py build_js
@endcode

@note
The example uses latest version of [trzeci/emscripten](https://hub.docker.com/r/trzeci/emscripten) docker container. At this time, the latest version works fine and is `trzeci/emscripten:sdk-tag-1.38.32-64bit`

0 comments on commit 59b0314

Please sign in to comment.