Chapter 1. Installation

1.1. Building J-Ben from source

1.1.1. Dependencies

J-Ben is dependent on the following:

  • GTK+/GTKmm: J-Ben is now developed using GTK on all platforms. Any recent version should work, but here's a listing of some of the libraries in use on my Linux system:

    • GTK+: 2.12.9
    • GLib: 2.16.1
    • Cairo: 1.4.10
    • libsigc++: 2.0.18
    • GTKmm/GLibmm/etc.: roughly matching versions
  • The Boost Libraries: J-Ben should work with boost 1.34.1 or later.

1.1.2. Linux users

Ensure you have the development packages for libboost and wxWidgets installed. Then, just "make", followed by "make install" to finish the installation.

1.1.3. Windows users

NOTE: These instructions are only for people building J-Ben from source code. If you just want to use J-Ben, proceed to Installing J-Ben.

Windows builds are more challenging in large because setting up the dependent libraries is more of a chore. This is especially true of GTK+ and GTKmm, for which at the time of writing no official all-in-one development distributions for Windows exist, and the ones which are readily available tend to be very out of date. As such, I strongly recommend -against- building from source unless you have a really good reason to do so.

That being said, the Windows development environment supported is MinGW with MSys. The Makefile provided works both under Linux and MSys. (I personally do not plan to support other build environments at this time.)

If you want to give it a try, do the following:

  • Ensure that you have pkg-config and makensis in your path, or add them in after starting MSys.
  • Change the variables in the "WINDOWS-SPECIFIC" section of the makefile as needed.
  • Build using the following command:

    mingw32-make PLATFORM=windows

If there is demand for more detailed Windows build instructions, I will provide them in a later version of this manual.

1.1.4. Expert: "Canadian Cross" Linux->Windows builds

NoteMost people can safely skip this section.

To attempt a "canadian cross" build, run:

make CANUCK=1 PLATFORM=windows BUILD=<release|debug|profile> \
CC=<cross-compiling gcc> CXX=<cross-compiling g++>

(This has not yet been tested; I'm working on it!)