Page updated:
|
Download
Here you can find how to get and install Open-RJ
Download
Current Version: 1.5.1
The current version of Open-RJ is 1.5.1
located on the project's file releases page.
A version history is also available from
the file releases page with corresponding
changes files.
Requirements
- The core library
The core library is "pure" C, and requires no additional libraries, or platform-specific
functionality, that will not be present with your chosen C compiler
- The C++ mapping
The C++ mapping consists of the
openrj::cpp::Database,
openrj::cpp::DatabaseException,
openrj::cpp::Field,
and
openrj::cpp::Record
classes, defined in the following headers:
<OPENRJ_ROOT>/include/openrj/cpp/openrj.hpp |
<OPENRJ_ROOT>/include/openrj/cpp/database.hpp |
<OPENRJ_ROOT>/include/openrj/cpp/field.hpp |
<OPENRJ_ROOT>/include/openrj/cpp/record.hpp |
These headers rely on the C++ standard library - exceptions, algorithms and strings - and also
rely on the
STLSoft
libraries,
version 1.9.1 beta 6
or later.
- The Ch mapping
The Ch mapping provides embedding/scriptable access to the Open-RJ C-API.
It is implemented in the
libopenrjch.c
and
dllmain.c
files (in the
<OPENRJ_ROOT>/mappings/Ch/
directory). The makefile in that directory is compatible with several versions
of the Visual C++ compiler, and could be adapted to build the Ch mapping for
other compilers with ease.
- The D mapping
The D mapping consists of the
org.openrj.Database,
org.openrj.DatabaseException,
org.openrj.Field,
org.openrj.InvalidKeyException,
and
org.openrj.Record
classes, defined in the <OPENRJ_ROOT>/mappings/D/org/openrj/openrj.d
file.
- The .NET mapping
The .NET mapping consists of the
OpenRJ.Database,
OpenRJ.DatabaseException,
OpenRJ.Field,
and
OpenRJ.Record
classes, defined in the C++.NET files under the
<OPENRJ_ROOT>/mappings/C++.NET directory.
To build these files, you will require the Visual C++.NET compiler, or another compiler capable of
making mixed-mode (Managed and Unmanaged) assemblies. You will also require the
STLSoft
libraries,
version 1.9.1 beta 6
or later.
- The Python mapping
The Python mapping consists of the
openrj.database,
openrj.field,
and
openrj.record
classes, defined in the
<OPENRJ_ROOT>/mappings/Ruby/openrj_python.c (C source) file.
To build this mapping you'll need to have Python 2.2 or
later installed, and have the appropriate environment settings configured correctly.
- The Ruby mapping
The Ruby mapping consists of the
OpenRJ::Database,
OpenRJ::FieldNameError,
OpenRJ::Field,
and
OpenRJ::Record
classes, defined in the
<OPENRJ_ROOT>/mappings/Ruby/openrj_ruby.c (C source) file.
To build this mapping you'll need to have Ruby 1.8.1 or
later installed, and have the appropriate environment settings configured correctly.
- The STL mapping
The STL mapping consists of the
openrj::stl::Database,
openrj::stl::DatabaseException,
openrj::stl::Field,
and
openrj::stl::Record
classes, defined in the following headers:
<OPENRJ_ROOT>/include/openrj/stl/openrj.hpp |
<OPENRJ_ROOT>/include/openrj/stl/database.hpp |
<OPENRJ_ROOT>/include/openrj/stl/field.hpp |
<OPENRJ_ROOT>/include/openrj/stl/record.hpp |
These headers rely on the C++ standard library - exceptions, algorithms and strings - and also
rely on the
STLSoft
libraries,
version 1.9.1 beta 6
or later.
Installing
Please note that this is a library written by developers, for
developers. Although we've done our best to ensure that everything is set
up to be as automatic as possible, we also assume that you've a level of skill
to help you out with any omissions/errors on our part.
The library is provided as a zip. All you need to do is unzip recursively, and then
build with your compiler of choice. Since the base library is written in C, it should
be straightforward to compile with any compiler; thus far, it's been compiled with
Borland, CodeWarrior, Digital Mars, GCC, Intel and Visual C++. The makefiles provided
also build the C, C++ and STL test programs.
To build the Ruby mapping, use the extconf.rb script in the
<openrj-root>/Mappings/Ruby directory.
To build the D mapping, compile the
<openrj-root>/Mappings/D/etc/c/openrj/openrj.d
and
<openrj-root>/Mappings/D/std/openrj.d
files, and link with the version of the library built with the Digital Mars C/C++
compiler.
|
|
%% Pets |
|
Name: Rebel |
Species: Dog |
Breed: German Shepherd |
%% |
|
Name: Moet |
Species: Dog |
Breed: Boxer |
%% |
|
Name: Little Girl Cat |
Species: Cat |
%% |
|
Name: Pepper |
Species: Dog |
Breed: Border Collie |
%% |
|
|
|