Using Ensembl VEP with Windows 10

Ensembl VEP has been developed for use on Linux systems and we recommend installing on a Linux system for the optimal installation and usage experience. However, we occasionally receive queries about using VEP in the Windows environment – this guide will help you get going if you are using Windows 10.

Traditionally, installing Perl (and subsequently Ensembl VEP) onto a Windows machine has been trickier than installation on a Unix setup. The number of prerequisites required meant Windows setup was often a challenging process.

However, with Ubuntu on Windows Subsystem for Linux (WSL) allowing for a freely available Ubuntu shell accessible from all Windows 10 machines, running VEP on Windows is now much easier. Once the Ubuntu shell is installed through the Microsoft Store, you can quickly get VEP up and running.

You can use the following commands to install the required dependencies:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install make gcc unzip libbz2-dev liblzma-dev zlib1g-dev libdbd-mysql-perl
sudo cpan install App::cpanminus
sudo cpanm Try::Tiny Module::Build DBI

Then clone the VEP package and run the VEP installer, with the commands:

git clone https://github.com/ensembl/ensembl-vep
cd ensembl-vep
perl INSTALL.pl

There are alternative methods of working with VEP on a Windows machine. For smaller  queries it is simplest to use the language agnostic Ensembl REST API, which has dedicated VEP endpoints. If you have Docker for Windows installed, you can run our VEP Docker image, and previous versions of Windows can still run the command line version of VEP through our Virtual Machine.