Prerequisites:
gcc
andg++
4.8 or newer, orclang
andclang++
3.4 or newer- Python 2.6 or 2.7
- GNU Make 3.81 or newer
- libexecinfo (FreeBSD and OpenBSD only)
$ ./configure
$ make
$ [sudo] make install
If your Python binary is in a non-standard location or has a non-standard name, run the following instead:
$ export PYTHON=/path/to/python
$ $PYTHON ./configure
$ make
$ [sudo] make install
To run the tests:
$ make test
To build the documentation:
$ make doc
To read the documentation:
$ man doc/iojs.1
Prerequisites:
- Python 2.6 or 2.7
- Visual Studio 2013 for Windows Desktop, or
- Visual Studio Express 2013 for Windows Desktop
- Basic Unix tools required for some tests,
Git for Windows includes Git Bash
and tools which can be included in the global
PATH
.
> vcbuild nosign
To run the tests:
> vcbuild test
Be sure you have downloaded and extracted [Android NDK] (https://developer.android.com/tools/sdk/ndk/index.html) before in a folder. Then run:
$ ./android-configure /path/to/your/android-ndk
$ make
Intl support is not enabled by default.
This option will build with "small" (English only) support, but
the full Intl
(ECMA-402) APIs. With --download=all
it will
download the ICU library as needed.
Unix / Macintosh:
$ ./configure --with-intl=small-icu --download=all
Windows:
> vcbuild small-icu download-all
The small-icu
mode builds with English-only data. You can add full
data at runtime.
Note: more docs are on the joyent/node wiki.
With the --download=all
, this may download ICU if you don't have an
ICU in deps/icu
.
Unix / Macintosh:
$ ./configure --with-intl=full-icu --download=all
Windows:
> vcbuild full-icu download-all
The Intl
object will not be available. This is the default at
present, so this option is not normally needed.
Unix / Macintosh:
$ ./configure --with-intl=none
Windows:
> vcbuild intl-none
$ pkg-config --modversion icu-i18n && ./configure --with-intl=system-icu
You can find other ICU releases at
the ICU homepage.
Download the file named something like icu4c-**##.#**-src.tgz
(or
.zip
).
Unix / Macintosh
# from an already-unpacked ICU:
$ ./configure --with-intl=[small-icu,full-icu] --with-icu-source=/path/to/icu
# from a local ICU tarball
$ ./configure --with-intl=[small-icu,full-icu] --with-icu-source=/path/to/icu.tgz
# from a tarball URL
$ ./configure --with-intl=full-icu --with-icu-source=http://url/to/icu.tgz
Windows
First unpack latest ICU to deps/icu
icu4c-##.#-src.tgz (or .zip
)
as deps/icu
(You'll have: deps/icu/source/...
)
> vcbuild full-icu
NOTE: Windows is not yet supported
It is possible to build io.js with OpenSSL FIPS module.
Instructions:
- Download and verify
openssl-fips-x.x.x.tar.gz
from https://www.openssl.org/source/ - Extract source to
openssl-fips
folder cd openssl-fips && ./config fipscanisterbuild --prefix=`pwd`/out
(NOTE: On OS X, you may want to run./Configure darwin64-x86_64-cc --prefix=`pwd`/out
if you are going to build x64-mode io.js)make -j && make install
- Get into io.js checkout folder
./configure --openssl-fips=/path/to/openssl-fips/out
- Build io.js with
make -j
- Verify with
node -p "process.versions.openssl"
(1.0.2a-fips
)