Comments (3)
Thanks, @prvst! My understanding of Perl is admittedly rough. Working with that information, I was able to get the tool working within the container using these commands:
export PERL5LIB="/opt/conda/lib/perl5/site_perl/5.22.0"
export PERL5LIB="/opt/conda/lib/perl5/site_perl/5.22.0/x86_64-linux-thread-multi:$PERL5LIB"
Per your second point, I need to get up to speed on writing my own conda recipes - hopefully that will happen soon. Is there a good rule of thumb for how best to combine dependencies when building recipes/containers? For example, if some tool X
required samtools
, would you include samtools
in the recipe for X
; or would you install both samtools
and X
via conda in the Dockerfile?
from containers.
I'm glad to know that you manage to have that working.
You should try conda first if your software is available there.
Have in mind that this is a general guideline, sometimes depending on the situation, like this problem you had, for example, if you feel that the conda installation can create some problems, then go ahead and include the software.
from containers.
Hey @jaeddy;
This is a pretty common error message. As you know, it signs that the module can't be found. Since we are dealing with a container and a conda installation, the problem may come from different sources.
It seems to be looking in the default Perl path for the container but not the conda-specific path. I can't tell whether this is a problem with the BioContainers image or with the VEP recipe.
The perl interpreter will always look at the default place plus any other directory specified on the script. In this particular case, what's going on is that the module is being installed by conda on the conda directory, not the default directory for Perl modules. There is a way to circumvent this during run time, you just need to run the script like this:
perl -I /opt/conda/lib/perl5/site_perl/5.22.0/ /opt/conda/bin/variant_effect_predictor.pl --help
The -I
(capital i) flag tells the interpreter that you are adding another directory to the @inc array on the fly.
When I run it like that I also have another error from a missing DBI module. So my guess here is that you will have the same problems with other modules, so:
- The conda manager is installing the modules on a custom folder and you need to:
a) change that
b) add the conda folder to your @inc array on your script.
- You mentioned about a recipe but, your exemple is using the base image and you are installing thing manually, so my second suggestion is to you to create a real recipe with all directives to have your script running.
I hope that can help you, I'm closing the issue but let me know if you need further asisstance
good luck
from containers.
Related Issues (20)
- Container Request CTAT
- Add AllCatchR container #518 HOT 3
- Container for Evidential Gene HOT 8
- Please add matplotlib for pandas biocontainer HOT 6
- CADD-scripts container image including conda environments
- Container request for kinship-read HOT 2
- Web not properly working HOT 3
- Publish vamb v4.1.3 HOT 4
- Request a container with capabilities for running plot-bamstats (a tool included in samtools) HOT 2
- diann:v1.8.1_cv1 - std::runtime_error HOT 4
- Update the meme biocontainer to version 5.5.5 and include graphicsmagick HOT 5
- Old AnnData container causing downstream version incompatabilities HOT 2
- Contributing lighter images ? HOT 5
- Not sure if this is the place, but https://biocontainers.pro/ shows facet error again for the last couple of days HOT 2
- Questions: container registries HOT 2
- Container for scsplit HOT 4
- cnv_facets is missing fonts HOT 4
- pairix container missing Perl dependency HOT 1
- Split backup into two jobs to avoid timeouts
- Add unzip to ncbi-datasets-cli HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from containers.