Search code examples
perlwindows-subsystem-for-linuxbioperl

Unable to install Bio::SeqIO module on Ubuntu for Windows 10 from Microsoft Store


I used Ubuntu 18.04 LTS for Windows from Microsoft store and tried to install BioPerl module Bio::SeqIO with cpanm Bio::SeqIO. Perl version is v5.26.1. It seems that module installation failed:

! Installing the dependencies failed: Module 'XML::Twig' is not installed, Module 'XML::LibXNL::Reader' is not installed, Module 'XML::LibXML' is not installed, Module 'XML::Parser::PerlSAX' is not installed, Module 'XML::DOM::XPath' is not installed, Module 'XML::DOM' is not installed
! Bailing out the installation for BioPerl-1.7.7
58 distributions installed

If i run a script with line use Bio::SeqIO; I get an error:

    Can't locate Bio/SeqIO.pm in @INC (you may need to install the 
        Bio::SeqIO module) (@INC contains: ...

I am not sure how to proceed. I could try to install dependencies that failed with cpanm but I do not know if it is a proper way.


Solution

  • I tried this on my Windows 10 laptop:

    • Installed WSL Ubuntu 18.10 as described here, then

    • Using the system perl, i.e /usr/bin/perl (maybe it would have been better to use perlbrew and installed a custom perl and such avoid using sudo) from the Linux terminal window:

      sudo apt-get update
      sudo apt-get -y install make gcc libexpat1-dev
      sudo cpan local::lib
      sudo cpan App::cpanminus
      sudo cpanm -n Time::Zone  # <-- failed tests
      sudo cpanm -n XML::DOM::XPath # <-- failed tests
      sudo cpanm Bio::SeqIO
      

    This worked for me.