The GEMTools library and command line tools is a project created to simplify the usage of the GEM Mapper in certain situations.
The GEMTools library and the code hosted in the GEMTools Github repository is licensed under teh GPL, but please note that the GEM mapper itself is not. GEM is distributed under a double-licensing scheme and is free for non-commercial use. For details about the GEM licensing, please read the GEM non-commercial binary license.
We are still writing up on the extensive documentation, but take a look at the RNASeq Pipeline Quickstart guide.
The GEM-Tools library is distributed in three different flavors. You can get a statically compiled binary bundle if you are just interested in the command line tools. If you would like to explore the library functionality, you can install the latest release frompypi. If you want to get the latest and greatest, you can clone the git repository and install the library from source.
The GEM-Tools command line tools are bundled and distributed as a static binary bundle that includes all dependencies. You do not have to install any other software to use the binary bundle, but you will not be able to write your own python scripts. You are restricted to the available command line tools.
*NOTE* that the GEM binaries are compiled with optimizations for i3 processors. We also provide a bundle for older CPU's that lack certain features. If you are not sure which package to download, i3 or core2, run the following command on the machine you want to install GEM-Tools:
python -c 'print ("i3 compatible" if set(["popcnt", "ssse3", "sse4_1", "sse4_2"]).issubset(set([f for sl in map(lambda x:x.split(), filter(lambda x:x.startswith("flags"), open("/proc/cpuinfo").readlines())) for f in sl])) else "No i3 support detected. Please use the core2 bundle")'
This command checks your ``/proc/cpuinfo`` file for the flags *popcnt*, *ssse3*, *sse4_1* and *sse4_2* are present. If that is the case, the CPU is supported by the i3 bundle. Otherwise use core2.
The latest release can be downloaded here:
In order to install the GEM-Tool library on your system and get access to the command line tools as well as the library functionality, you need to have a couple of dependencies installed. Unfortunately we can currently not install those dependencies for you. After all dependencies are installed, you have all the options to build and install the library in your local machine. These include:
The C API needs to have gzlib and bzlib installed with header files. Both libraries are used to transparently open compressed files. On a Debian/Ubuntu system the packages are libbz2-dev and zlib-dev.
Here is an example of how you can install the necessary dependencies to build the C-library on a Debian/Ubuntu system:
sudo apt-get install make gcc libbz2-dev
For the python part, the library will work both with Python 2.6 and Python 2.7. In order to compile the the C binding, you need to have Cython installed, as well as the python header files.
Here is an example of how you can install the necessary dependencies to build the Python library on a Debian/Ubuntu system:
sudo apt-get install make gcc libbz2-dev python-dev
Gemtools is distributed through pypi and you can install the latest released version using `pip` or `easy_install`. But please make sure you have all the dependencies installed first.
pip install gemtools
As non-root user:
pip install gemtools --user
Please take a look at the readme for instruction on how to install directly from the GEMTool repository
If you have any questions or you run into problems, feel free to join the gemtools mailing list at firstname.lastname@example.org.
Please feel free to use the Github Issue Tracker to report any issues or feature requests.