Skip to content

Commit

Permalink
Merge pull request #310 from pangenome/jemalloc_readme
Browse files Browse the repository at this point in the history
more explicit README regarding the dependencies
  • Loading branch information
AndreaGuarracino authored Jul 29, 2021
2 parents f50325d + b283e64 commit 9e02b8b
Showing 1 changed file with 20 additions and 5 deletions.
25 changes: 20 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,22 @@ The RAM and computational savings are substantial. In partially ordered regions

### building from source

`odgi`requires a C++ version of 9.3 or higher. You can check your version via:
`odgi` requires a C++ version of 9.3 or higher. You can check your version via:

``` bash
gcc --version
g++ --version
```

Clone the `odgi` git repository recursively because of the many submodules and build with:
`odgi` pulls in a host of source repositories as dependencies. It may be necessary to install several system-level
libraries to build `odgi`. On `Ubuntu 20.04`, these can be installed using `apt`:

```
sudo apt install build-essential cmake python3-distutils python3-dev libjemalloc-dev
```

After installing the required dependencies, clone the `odgi` git repository recursively because of the many submodules
and build with:

```
git clone --recursive https://github.com/pangenome/odgi.git
Expand All @@ -44,10 +52,17 @@ cmake -DBUILD_STATIC=1 -H. -Bbuild && cmake --build build -- -j 3
You'll need to set this flag to 0 or remove and rebuild your build directory if you want to unset this build behavior and get a dynamic binary again.
Static builds are unlikely to be supported on OSX, and require appropriate static libraries on linux.

`odgi` pulls in a host of source repositories as dependencies. It may be necessary to install several system-level libraries to build odgi.
On Ubuntu 20.04, these can be installed using apt: `sudo apt install build-essential cmake python3-distutils python3-dev libjemalloc-dev`.

Alternatively, after `sudo apt install guix`, start a GNU Guix build container with:
#### Notes on dependencies

On `Arch Linux`, the `jemalloc` dependency can be installed with:

```
sudo pacman -S jemalloc # arch linux
```

An alternative way to manage `odgi`'s dependencies is to use `GUIX`. After `sudo apt install guix`, start a GNU Guix
build container with:

```bash
source ./.guix-build
Expand Down

0 comments on commit 9e02b8b

Please sign in to comment.