Skip to content
Javascript Bindings for C++
Find file
Pull request Compare This branch is even with Flusspferd:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
CMakeModules
debian
help
include
js
libflusspferd
misc
plugins
programs
test
util
vendor
.gitattributes
.gitignore
.gitmodules
CMakeLists.txt
CONTRIBUTORS
COPYING
ChangeLog.txt
Makefile
README
ReleaseNotes.txt
configure
flusspferd-version.sh
pack.sh

README

Flusspferd
==========

Javascript bindings for C++, a Javascript interpreter and shell, and a
Javascript/C++ module system. Also, Flusspferd includes a few Javascript classes
and modules: binary blobs, SQLite 3, GMP and others (most of these do not have
to be installed).

It supports Spidermonkey as its backend, and possibly support for other engines
will be added later.

Flusspferd is licensed under the MIT license (open source).

See http://flusspferd.org/ for more information.

Requirements
------------

- Linux or Mac OS X or another POSIX system
- Spidermonkey 1.8.1+ (NOT 1.8.0)
- Boost 1.40+
- cmake 2.6+ (Build system)
- iconv support
- A reasonably modern and C++-compliant compiler. If your compiler is too old,
  then you're on your own. Sorry, but we don't intend to spend our unpaid time
  writing work-arounds for broken compilers.

Optionally:
- libedit (BSD)
- libxml2 2.6+ (for the XML plugin)
- SQLite3 3.4+(for the SQLite3 plugin)
- cURL (for the cURL plugin)
- GMP (for the GMP plugin)

Building & installing Flusspferd
--------------------------------

You can build Flusspferd (thanks to our wrappers) with

$ ./configure && make && sudo make install

as you probably are accustomed to. You might have to pass some parameters to
./configure:

  -DBOOST_ROOT=/path/to/boost
  -DSPIDERMONKEY_ROOT=/path/to/spidermonkey
  -DLINE_EDITOR=readline (if you want to use GNU/readline instead of editline)

These parameters are passed directly to cmake, i.e. you can also pass other
parameters that cmake understands.

You can generate the documentation with

$ ./util/docs.sh

The generated documentation is in ./build/html/.

Using Flusspferd
----------------

We have tutorials at http://flusspferd.org/docs/tutorials.html. Just a quick
peek:

> const GMP = require('gmp');
> f = GMP.Float(2);
2.0
> print(f.sqrt())
1.41421356237309504876
>

(The text after ">" in each line is input.)
Something went wrong with that request. Please try again.