Installing GW version 2

GW v2 is in beta. It is not available from package managers (conda, Homebrew) or as a downloadable app — you must build it from source. The v1 packages remain available from the v1 install docs.

Requirements

  • C++17 compiler (clang or gcc)
  • htslib and GLFW3
  • ncurses (ncursesw on Windows/MSYS2), for the startup genome picker
  • pkg-config
  • ~4 GB disk for the Skia dependency (downloaded by make prep)

Easiest route — conda:

conda create -y -n gw_env -c conda-forge glfw htslib ncurses
conda activate gw_env

Build

git clone https://github.com/kcleal/gw.git
cd gw
make prep   # downloads pre-built Skia (m143)
CONDA_PREFIX=$(conda info --base) LDLIBS+="-lcrypto -lssl" make -j4

Produces a single gw binary.

macOS

Or with Homebrew:

brew install glfw htslib ncurses pkg-config
make prep && make -j4

On Apple Silicon you may need:

make -j4 LDFLAGS="-L/opt/homebrew/lib" CPPFLAGS="-I/opt/homebrew/include"

Linux

sudo apt-get install libglfw3-dev libhts-dev libncurses-dev pkg-config
make prep && make -j4

Windows

Build under MSYS2 (UCRT64):

pacman -S mingw-w64-ucrt-x86_64-glfw mingw-w64-ucrt-x86_64-ncurses mingw-w64-ucrt-x86_64-htslib pkg-config
make prep && make -j4

Make targets

Target Purpose
make Build the gw binary
make debug Debug build
make shared Build libgw shared library
make server Build gw-server (see the viewer protocol)
make clean Remove objects

Verify

gw --version    # e.g. 2.0.0
gw hg38         # launch with the hg38 online genome

Upgrading from v1

GW v2 reads the same .gw.ini config, sessions and file formats as v1. Note:

  • The overlay UI has moved to ImGui — see The interface
  • New commands are available — see Commands
  • The v1 command-line options remain supported

This site uses Just the Docs, a documentation theme for Jekyll.