Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failed to compile plugin LoF #19

Closed
AndrewSkelton opened this issue Jul 19, 2017 · 5 comments
Closed

Failed to compile plugin LoF #19

AndrewSkelton opened this issue Jul 19, 2017 · 5 comments

Comments

@AndrewSkelton
Copy link
Contributor

I'm struggling to get the LoF plugin running in VEP (88). I've specified my plugin directory and VEP is looking there for the plugins. Everytime I run VEP during initialisiation, I get the following:

Failed to compile plugin LoF:
2017-07-19 16:44:34 - Failed to compile plugin LoF: Can't open me2x3acc1!

I've grabbed the maxEntScan stuff from GitHub and put that in the Plugin directory, but still no luck.

Any suggestions?

@birndle
Copy link
Collaborator

birndle commented Jul 19, 2017

Hey Andrew,

Thank you for your question. I've just made some changes to fix the issue. First, download the updated repo. Next, append the path to your local loftee directory to your PERL5LIB variable. Finally, when you run VEP make sure to input this same path to the "loftee_path" option. Please let me know if you have further issues.

Thanks,
Daniel

@AndrewSkelton
Copy link
Contributor Author

AndrewSkelton commented Jul 19, 2017

Hi Daniel,

Thanks for such a quick response, much appreciated!

I cloned the repo and added it to my PERL5LIB variable, and added the directory as a LoF parameter. I get the following error, but at least it's different!

Additionally, I've included my full VEP command below incase that helps

Error

Failed to compile plugin LoF: syntax error at /home/andrew/Software/vep_cache/Plugins/LoF.pm line 99, near "))"
Compilation failed in require at (eval 23) line 2.
BEGIN failed--compilation aborted at (eval 23) line 2.

VEP Command

##'Set Variables
##'-----------------------------------------------------------------------------------------#
VEP="/home/andrew/Software/variant_effect_predictor/variant_effect_predictor.pl"
VEP_CACHE="/home/andrew/Software/vep_cache/"
VEP_FASTA="${VEP_CACHE}/homo_sapiens/88_GRCh37/Homo_sapiens.GRCh37.75.dna.primary_assembly.fa"
PLUGIN_DBS="/home/andrew/.vep/dbs/"
PLUGIN_DIR="/home/andrew/Software/vep_cache/Plugins"
LOFTEE="${PLUGIN_DBS}human_ancestor.fa.gz"
DBNSFP="${PLUGIN_DBS}dbNSFPv2_9_3_chr.gz"
VCF_IN="/home/andrew/2016Oct_SeqR_WES/data_in/FAM39.vcf"
VCF_OUT="/home/andrew/2016Oct_SeqR_WES/data_prepped/FAM39_Anno.vcf"
LOFTEE_PATH="/home/andrew/Software/vep_cache/loftee"
##'-----------------------------------------------------------------------------------------#



##'Run VEP
##'-----------------------------------------------------------------------------------------#
perl $VEP --everything --vcf -v --allele_number --no_stats --cache --offline --dir_plugins $PLUGIN_DIR \
          --dir $VEP_CACHE --force_overwrite --cache_version 88 --buffer_size 150000 \
          --fasta $VEP_FASTA --assembly GRCh37 --fork 30 --force_overwrite \
          --plugin LoF,human_ancestor_fa:${LOFTEE},filter_position:0.05,min_intron_size:15,loftee_path:${LOFTEE_PATH} \
          --plugin dbNSFP,${DBNSFP},Polyphen2_HVAR_pred,CADD_phred,SIFT_pred,FATHMM_pred,MutationTaster_pred,MetaSVM_pred \
          -i $VCF_IN -o $VCF_OUT
##'-----------------------------------------------------------------------------------------#

@AndrewSkelton
Copy link
Contributor Author

A minor update, I've managed to get LoF to compile, but there seems to be a communication issue with LoF and VEP now.

I've made the following changes:
LoF.pm Line 99
Currently:
my %seq = &make_sequence_matrix($self->{loftee_path}, 'maxEntScan/splicemodels/splice5sequences')); # score5
Changed to:
my %seq = &make_sequence_matrix(catdir($self->{loftee_path}, 'maxEntScan/splicemodels/splice5sequences')); # score5

Added my @metables; to score3.pl
Added my %me2x5; and my %seq; to score5.pl

I'll make a pull request for that.

These adjustments allow for LoF to compile, however when initialising with VEP I now get the following error:

2017-07-20 12:01:50 - Failed to instantiate plugin LoF: Can't locate object method "new" via package "LoF" (perhaps you forgot to load "LoF"?) at /home/andrew/Software/variant_effect_predictor/variant_effect_predictor.pl line 1167.

Which is odd, as the new subroutine in LoF.pl looks fine to me. Any suggestions?

@birndle
Copy link
Collaborator

birndle commented Jul 20, 2017

Thanks for finding these bugs! I merged your changes. That initialization error was the result of a trivial bug (LoF.pm was being declared as "package LoF_splice" rather than "package LoF"). I fixed that up along with some other bugs I found and it's working for me now. Try pulling down again and let me know if you have any more issues.

Sorry about the trouble.

@AndrewSkelton
Copy link
Contributor Author

That did the trick! Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants