|
Packit Service |
c5cf8c |
[![Build Status](https://travis-ci.org/halimamer/izem.svg?branch=master)](https://travis-ci.org/halimamer/izem)
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
Izem Release %VERSION%
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
Izem is a shared-memory synchronization library that offers several
|
|
Packit Service |
c5cf8c |
synchronization mechanisms (e.g. locks and conditional variables)
|
|
Packit Service |
c5cf8c |
and also concurrent data-structures (e.g. lists and queues).
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
1. Getting Started
|
|
Packit Service |
c5cf8c |
2. Testing
|
|
Packit Service |
c5cf8c |
3. Reporting Problems
|
|
Packit Service |
c5cf8c |
4. Etymology
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
-------------------------------------------------------------------------
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
1. Getting Started
|
|
Packit Service |
c5cf8c |
==================
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
The following instructions take you through a sequence of steps to get
|
|
Packit Service |
c5cf8c |
the default configuration up and running.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
(a) You will need the following prerequisites.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
- REQUIRED: This tar file izem-%VERSION%.tar.gz
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
- REQUIRED: A C compiler (gcc is sufficient)
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
Also, you need to know what shell you are using since different shell
|
|
Packit Service |
c5cf8c |
has different command syntax. Command "echo $SHELL" prints out the
|
|
Packit Service |
c5cf8c |
current shell used by your terminal program.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
(b) Unpack the tar file and go to the top level directory:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
tar xzf izem-%VERSION%.tar.gz
|
|
Packit Service |
c5cf8c |
cd izem-%VERSION%
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
If your tar doesn't accept the z option, use
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
gunzip izem-%VERSION%.tar.gz
|
|
Packit Service |
c5cf8c |
tar xf izem-%VERSION%.tar
|
|
Packit Service |
c5cf8c |
cd izem-%VERSION%
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
(c) Choose an installation directory, say
|
|
Packit Service |
c5cf8c |
/home/<USERNAME>/izem-install, which is assumed to non-existent
|
|
Packit Service |
c5cf8c |
or empty.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
(d) Specify the installation directory:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
for csh and tcsh:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
./configure --prefix=/home/<USERNAME>/izem-install |& tee c.txt
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
for bash and sh:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
./configure --prefix=/home/<USERNAME>/izem-install 2>&1 | tee c.txt
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
Bourne-like shells, sh and bash, accept "2>&1 |". Csh-like shell,
|
|
Packit Service |
c5cf8c |
csh and tcsh, accept "|&". If a failure occurs, the configure
|
|
Packit Service |
c5cf8c |
command will display the error. Most errors are straight-forward
|
|
Packit Service |
c5cf8c |
to follow.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
(e) Build Izem:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
for csh and tcsh:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make |& tee m.txt
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
for bash and sh:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make 2>&1 | tee m.txt
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
This step should succeed if there were no problems with the
|
|
Packit Service |
c5cf8c |
preceding step. Check file m.txt. If there were problems, do a
|
|
Packit Service |
c5cf8c |
"make clean" and then run make again with V=1.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make V=1 |& tee m.txt (for csh and tcsh)
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
OR
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make V=1 2>&1 | tee m.txt (for bash and sh)
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
Then go to step (3) below, for reporting the issue to the Izem
|
|
Packit Service |
c5cf8c |
developers and other users.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
(f) Install Izem:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
for csh and tcsh:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make install |& tee mi.txt
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
for bash and sh:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make install 2>&1 | tee mi.txt
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
This step collects all required executables and scripts in the bin
|
|
Packit Service |
c5cf8c |
subdirectory of the directory specified by the prefix argument to
|
|
Packit Service |
c5cf8c |
configure.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
-------------------------------------------------------------------------
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
2. Testing
|
|
Packit Service |
c5cf8c |
===================
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
We package a test suite in the Izem distribution. You can run the test
|
|
Packit Service |
c5cf8c |
suite in the test directory using:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make check
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
OR
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make testing
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
The distribution also includes some Izem examples. You can run
|
|
Packit Service |
c5cf8c |
them in the examples directory using:
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make check
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
OR
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
make testing
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
If you run into any problems on running the test suite or examples,
|
|
Packit Service |
c5cf8c |
please follow step (3) below for reporting them to the Izem
|
|
Packit Service |
c5cf8c |
developers and other users.
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
-------------------------------------------------------------------------
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
3. Reporting Problems
|
|
Packit Service |
c5cf8c |
=====================
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
If you have problems with the installation or usage of Izem, please
|
|
Packit Service |
c5cf8c |
contact Halim Amer at aamer (at) anl (dot) gov
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
-------------------------------------------------------------------------
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
4. Etymology
|
|
Packit Service |
c5cf8c |
=====================
|
|
Packit Service |
c5cf8c |
|
|
Packit Service |
c5cf8c |
Izem means Lion in Berber. "I" here is pronounced "E" in English (the
|
|
Packit Service |
c5cf8c |
whole word will sound similar to "Eden").
|