Getting Started with Node Julia

Installation

Installation is done using npm ...

npm install node-julia

or as a dependency in another project's package.json file

"dependencies":
{
  "node-julia": "1.0.x"
}

or to get the latest unreleased source

"dependencies":
{
  "node-julia": "git://github.com/waTeim/node-julia.git"
}

and npm will download and install the necessary dependencies.

Julia must already be installed

Rather than installing Julia along with this module, it is assumed that the Julia install has already occurred. Since Julia has its own package management system as well as other tools it interacts with, having Julia install as a package subordinate to node-julia was thought too restrictive for the minor ease of installation it would provide.

Finding the installed version of Julia

The Julia installation provides the necessary header files and libraries for embedding a Julia engine in a C program and so is an integral part of the installation step. The Python script tools/find_julia.py is used to find the installed version of Julia and when invoked searches for Julia in the following order

  1. Wherever the command julia is located in the command path.
  2. System specific standard locations (e.g. /Applications/Julia.app on OS/X).
  3. The users home directory.

Compiler Details

The name of the compiler and the necessary compilation flags are automatically determined by node-gyp in combination with the file binding.gyp and has been tested on the latest OS/X and various versions of Linux. The compiler for each OS is clang and gcc respectively. In all cases, c++11 standard memory (for shared_ptr) and threading support is necessary. Systems with gcc 4.6 installed are detected and the compile flags are altered to use gcc's pre-2011 support (compiler flag c++0x).