jerasure library with packaging
 
 
 
 
 
Go to file
Vitaliy Filippov 3be2f53e54 Add RPM spec 2020-12-01 02:09:07 +03:00
Examples tests: add minimal encoder/decoder test 2014-12-15 18:17:18 +01:00
debian d/control,copyright: Update upstream location to jerasure.org (Closes: #772535) 2017-08-06 02:37:11 +02:00
include define galois_uninit_field 2014-10-03 19:08:44 +02:00
m4 This is the squashed pull request from David Glessner, squashed 2014-03-28 08:34:46 -07:00
rpm Add RPM spec 2020-12-01 02:09:07 +03:00
src Resolve cppcheck Signed integer overflow error 2017-04-10 17:47:45 +10:00
.gitattributes This is the squashed pull request from David Glessner, squashed 2014-03-28 08:34:46 -07:00
.gitignore run tests with make check 2014-04-02 18:22:53 +02:00
AUTHORS Setup autoconf to work with Jerasure 2013-12-04 23:08:08 -08:00
COPYING Make autoconf put BSD license in COPYING. 2014-01-07 08:40:05 -08:00
ChangeLog Setup autoconf to work with Jerasure 2013-12-04 23:08:08 -08:00
License.txt Added new license header for version 2.0 2013-11-23 12:05:19 -08:00
Makefile.am This is the squashed pull request from David Glessner, squashed 2014-03-28 08:34:46 -07:00
Manual.pdf Revert "Removed PDF from the repo and added a note in the README that describes how to" 2014-12-25 12:20:23 +01:00
NEWS Setup autoconf to work with Jerasure 2013-12-04 23:08:08 -08:00
PERF.txt Added performance numbers and more text to the README 2013-11-24 18:41:24 -08:00
README jerasure.org is http, not https 2014-12-29 16:47:50 +01:00
configure.ac documentation: update with jerasure.org new home 2014-12-25 12:24:43 +01:00

README

This is revision 2.0 of Jerasure.  This is pretty much Jerasure 1.2 without the
original Galois Field backend.  Version 2.0 links directly to GF-Complete, which
is more flexible than the original, and *much* faster, because it leverages SIMD
instructions.
Authors: James S. Plank (University of Tennessee)
         Kevin M. Greenan (Box)

------------------------------------------------------------

The online home for jerasure is:

  - http://jerasure.org/jerasure/jerasure

------------------------------------------------------------

External Documentation:

See the file Manual.pdf for the programmer's manual and tutorial.

See http://jerasure.org/jerasure/gf-complete for GF-Complete.

NOTE: You must have GF-Complete installed (or compiled) in order to use Jerasure 2.0.

There are two directories of source code:

The src directory contains the jerasure code.
The Examples directory contains the example programs.

------------------------------------------------------------

If you do not have Autoconf 2.65 or later installed, you can simply build
from the tarball distribution:

http://www.kaymgee.com/Kevin_Greenan/Software_files/jerasure.tar.gz

Installing if you are allowed to install GF-Complete on your machine:
(You can skip the autoreconf step if you're using a tarball distribution.)

1.) Install GF-Complete
2.) autoreconf --force --install (*skip* if you are building from tarball)
3.) ./configure
4.) make
5.) sudo make install

This will install the library into your machine's lib directory,
the headers into include, and the example programs into bin.

The configuration process assumes shared objects are searched for in
/usr/local/lib. If this is not the case on your system, you can specify a
search path at configuration time. For example:
  ./configure LD_LIBRARY_PATH=/usr/local/lib

------------------------------------------------------------

Installing if you can compile GF-Complete, but you cannot install it:

1.) Install GF-Complete.  Let's suppose the full path to GF-Complete is
    in the environment variable  GFP
2A.) On Linux, set the environment variable LD_LIBRARY_PATH so that it
     includes $GFP/src/.libs
2B.) On a mac, set the environment variable DYLD_LIBRARY_PATH so that it
     includes $GFP/src/.libs
2.) ./configure LDFLAGS=-L$GFP/src/.libs/ CPPFLAGS=-I$GFP/include
3.) make

The examples will be in the directory Examples.  The include files will
be in the directory include, and the library will be called libJerasure.a
in the directory src/.libs.

------------------------------------------------------------

As long as GF-Complete is installed, Jerasure 2.0 can be used just as previous
versions.  There is no need to define custom Galois Fields.  Jerasure will
determine the default field to use, if one is not specified.

If you would like to explore a using a different Galois Field implementation,
please see the manual.

------------------------------------------------------------

Testing GF-Complete

If the GF-Complete tools are installed in /usr/local/bin

  make check

If the GF-Complete tools are installed elsewhere

  make GF_COMPLETE_DIR=$(pwd)/../gf-complete/tools check

To run some tests with valgrind

  make VALGRIND='valgrind --tool=memcheck --quiet' \
       GF_COMPLETE_DIR=$(pwd)/../gf-complete/tools \
       check