1
$\begingroup$

I am trying to installing Vep on Linux but an error is permanent

[fi1d18@cyan01 ensembl-vep-release-95]$ perl INSTALL.pl

Hello! This installer is configured to install v95 of the Ensembl API for use by the VEP.
It will not affect any existing installations of the Ensembl API that you may have.

It will also download and install cache files from Ensembl's FTP server.

Checking for installed versions of the Ensembl API...done

Setting up directories
Destination directory ./Bio already exists.
Do you want to overwrite it (if updating VEP this is probably OK) (y/n)? y
 - fetching BioPerl
 - unpacking ./Bio/tmp/release-1-6-924.zip
 - moving files
Attempting to install Bio::DB::HTS and htslib.

>>> If this fails, try re-running with --NO_HTSLIB

 - checking out HTSLib
fatal: destination path 'htslib' already exists and is not an empty directory.
 - building HTSLIB in ./htslib
In /home/fi1d18/ensembl-vep/ensembl-vep-release-95/htslib
gcc -g -Wall -O2 -fPIC -Wno-unused -Wno-unused-result -I.  -c -o cram/cram_io.o cram/cram_io.c
cram/cram_io.c:61:18: error: lzma.h: No such file or directory
cram/cram_io.c: In function 'lzma_mem_deflate':
cram/cram_io.c:679: warning: implicit declaration of function 'lzma_stream_buffer_bound'
cram/cram_io.c:685: error: 'LZMA_OK' undeclared (first use in this function)
cram/cram_io.c:685: error: (Each undeclared identifier is reported only once
cram/cram_io.c:685: error: for each function it appears in.)
cram/cram_io.c:685: warning: implicit declaration of function 'lzma_easy_buffer_encode'
cram/cram_io.c:685: error: 'LZMA_CHECK_CRC32' undeclared (first use in this function)
cram/cram_io.c: In function 'lzma_mem_inflate':
cram/cram_io.c:695: error: 'lzma_stream' undeclared (first use in this function)
cram/cram_io.c:695: error: expected ';' before 'strm'
cram/cram_io.c:701: error: 'LZMA_OK' undeclared (first use in this function)
cram/cram_io.c:701: warning: implicit declaration of function 'lzma_stream_decoder'
cram/cram_io.c:701: error: 'strm' undeclared (first use in this function)
cram/cram_io.c:701: warning: implicit declaration of function 'lzma_easy_decoder_memusage'
cram/cram_io.c:719: warning: implicit declaration of function 'lzma_code'
cram/cram_io.c:719: error: 'LZMA_RUN' undeclared (first use in this function)
cram/cram_io.c:720: error: 'LZMA_STREAM_END' undeclared (first use in this function)
cram/cram_io.c:732: error: 'LZMA_FINISH' undeclared (first use in this function)
cram/cram_io.c:743: warning: implicit declaration of function 'lzma_end'
At top level:
cc1: warning: unrecognized command line option "-Wno-unused-result"
make: *** [cram/cram_io.o] Error 1
Compile didn't complete. No libhts.a library file found at INSTALL.pl line 820.
[fi1d18@cyan01 ensembl-vep-release-95]$

And

[fi1d18@cyan01 ensembl-vep]$ perl INSTALL.pl --NO_HTSLIB

Hello! This installer is configured to install v95 of the Ensembl API for use by the VEP.
It will not affect any existing installations of the Ensembl API that you may have.

It will also download and install cache files from Ensembl's FTP server.

Checking for installed versions of the Ensembl API...done

Setting up directories
Destination directory ./Bio already exists.
Do you want to overwrite it (if updating VEP this is probably OK) (y/n)? y
 - fetching BioPerl
 - unpacking ./Bio/tmp/release-1-6-924.zip
 - moving files

Downloading required Ensembl API files
 - fetching ensembl
 - unpacking ./Bio/tmp/ensembl.zip
 - moving files
 - getting version information
 - fetching ensembl-variation
 - unpacking ./Bio/tmp/ensembl-variation.zip
 - moving files
 - getting version information
 - fetching ensembl-funcgen
 - unpacking ./Bio/tmp/ensembl-funcgen.zip
 - moving files
 - getting version information
 - fetching ensembl-io
 - unpacking ./Bio/tmp/ensembl-io.zip
 - moving files
 - getting version information

Testing VEP installation
ERROR: Testing VEP script failed with the following error
Can't locate Time/HiRes.pm in @INC (@INC contains: /home/fi1d18/ensembl-vep/modules /home/fi1d18/ensembl-vep ./Bio /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/Utils/SqlHelper.pm line 93.
BEGIN failed--compilation aborted at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/Utils/SqlHelper.pm line 93.
Compilation failed in require at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/DBSQL/DBConnection.pm line 81.
BEGIN failed--compilation aborted at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/DBSQL/DBConnection.pm line 81.
Compilation failed in require at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/DBSQL/DBAdaptor.pm line 69.
BEGIN failed--compilation aborted at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/DBSQL/DBAdaptor.pm line 69.
Compilation failed in require at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/Registry.pm line 137.
BEGIN failed--compilation aborted at /home/fi1d18/ensembl-vep/Bio/EnsEMBL/Registry.pm line 137.
Compilation failed in require at /home/fi1d18/ensembl-vep/modules/Bio/EnsEMBL/VEP/BaseVEP.pm line 58.
BEGIN failed--compilation aborted at /home/fi1d18/ensembl-vep/modules/Bio/EnsEMBL/VEP/BaseVEP.pm line 58.
Compilation failed in require at (eval 7) line 3.
        ...propagated at /usr/share/perl5/base.pm line 94.
BEGIN failed--compilation aborted at /home/fi1d18/ensembl-vep/modules/Bio/EnsEMBL/VEP/BaseRunner.pm line 56.
Compilation failed in require at (eval 6) line 3.
        ...propagated at /usr/share/perl5/base.pm line 94.
BEGIN failed--compilation aborted at /home/fi1d18/ensembl-vep/modules/Bio/EnsEMBL/VEP/Runner.pm line 71.
Compilation failed in require at ./vep line 20.
BEGIN failed--compilation aborted at ./vep line 20.

[fi1d18@cyan01 ensembl-vep]$
$\endgroup$
  • 2
    $\begingroup$ Do the VEP installation instructions give a list of dependencies or prerequisites? If so, you must install these before trying to install VEP. The solution to your second error is also in the message: Can't locate Time/HiRes.pm. This means there's a Perl module Time::HiRes that is not installed. $\endgroup$ – Daniel Standage Feb 4 at 15:53
  • 1
    $\begingroup$ A general tip with Perl installations: When you see an error message that states "Cannot locate <thing1>/<thing2> in @INC", the solution is almost always running cpan <thing1>::<thing2> from the command line. $\endgroup$ – Ram RS Feb 4 at 22:24
  • $\begingroup$ Says You need to be root to perform this command $\endgroup$ – Angel Feb 5 at 8:58
  • 1
    $\begingroup$ It is pretty rare for linux utilities to need root. Try Google "CPAN install module no root" or "CPAN user install module". By adding a "without root" to your Google searches, you will see ways to not need root. $\endgroup$ – Ram RS Feb 5 at 16:30
  • 1
    $\begingroup$ Most "install" processes copy files and compile them at a certain location (ideally something found under $PATH), creating executable files so when you run the command, the shell can find the executable file. When you don't have root, you might be unable to copy the files to the default location, but you would be able to do the same set of install steps to a custom location, which you can then add to $PATH yourself. Once you understand the concept of how installs work, you'll seldom need root access. $\endgroup$ – Ram RS Feb 5 at 16:33
1
$\begingroup$

What you can try is stated out in the message:

If this fails, try re-running with --NO_HTSLIB

$\endgroup$
  • $\begingroup$ Thank you, I got error again. Please have a look at my error when I am trying with --NO_HTSLIB $\endgroup$ – Angel Feb 4 at 14:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.