molevol-ub / DOMINO

Development of molecular markers in non-model organisms
GNU General Public License v3.0
4 stars 3 forks source link

Cannot Run via Command Line on Linux system #3

Closed entobento closed 7 years ago

entobento commented 7 years ago

I am trying to develop baits for a RAD-seq NGS assessment using DOMINO on a Linux system that I don't have installation (i.e. sudo/yum) permissions for. As such, I am trying to run it via command line. DOMINO seems to clone and install fine.. no errors, but when I try and run the first perl script in the pipeline I consistently get the "Can't locate DOMINO.pm in @INC" error. When I attempt to correct this using export PERL5LIB=[mypat]/DOMINO.pm the assessment then tells me that it can't find the path to another perl script that is within the bin/lib library. I was wondering if you had any suggestions or work arounds for this.

best,

Adam

JFsanchezherrero commented 7 years ago

Dear Adam,

First of all, I am glad you are thinking in implementing DOMINO in your pipeline!

I am afraid this is an error due to the implementation of the DOMINO package (DOMINO.pm). It was lately implemented and it may not have all the debugging necessary on Linux.

I am out of office these days but I will be back by monday so I will give you a fast response as soon as possible. I am aware and nearly sure where the problem is but I can't sort it out right now.

Best regards,

Jose

entobento commented 7 years ago

Thank you so much for getting back to me Jose! I was actually able to debug it and it seems to run okay now, at least for the first step.

The first problem (for me at least) was that there are two locations with the perl scripts "DOMINO/src/perl" and "DOMINO/bin". I initially linked the script to the former with "DOMINO/src/perl/DM_Clean_v1.0.2.pl" which caused the @INC error for DOMINO.pm. After correcting this and linking it to "DOMINO/bin/DM_Clean_v1.0.2.pl" instead the @INC error for DOMINO.pm was replaced with an @INC error for Exporter::Tiny. I then used "cpanm Exporter::Tiny" to download the perl module onto my local drive/into my local perl library. I then copied that module into the area in the DOMINO pipeline that holds all of the other base modules ("DOMINO/bin/lib/"). In theory this would stop the error, so to test it out I ran the multi-species fastq 454 example files. The first step succeeded without error in 31 seconds. I'm still new to the pipeline so I am not sure everything is working properly, but it seems to work for now.

Thanks again... I will likely have more questions soon.

Adam

JFsanchezherrero commented 7 years ago

Dear Adam, I am glad you get to run DOMINO. Bear in mind, that the problem you commented should be solved if you had installed DOMINO using the command line via the install.sh command.

At the beginning, once you git clone DOMINO, all the scripts (C++, perl scripts and module files) are under DOMINO/src and DOMINO/files. If you install DOMINO using the install.sh command, you should get the DOMINO/bin generated and all the perl modules and packages properly installed and the scripts under DOMINO/src/perl copy to this folder. If you execute the scripts under bin should not provide any error but it will do if you run them under src folder as they are missing multiple packages.

I am afraid you sort it out to do it by yourself but as I said you should have get it solved if you had installed it using the install.sh file.

Jose

entobento commented 7 years ago

Thanks so much for getting back to me Jose, I am sorry to say that I did install it via command line in Linux (using install.sh)... as such this is definitly a bug, at least on my machine. All the scripts definitly copied to the /bin folder, but as pointed out in another issue, it seems that all the modules/programs did not install in /bin (e.g. Samtools, Tiny). I am not sure why this is an issue with my Linux machine and potentially not yours, but it may be because I only have access to the local directory of the HPC.

CristinaFriasLopez commented 7 years ago

Hi Adam,

I am Cristina. I was in holidays. Jose knows better how the installer works... but I will try to help you. I tested DOMINO in some distribution as UBUNTU and Fedora, and It worked fine.

Some questions: What distribution of UNIX/LINUX are you using?

First, you solved the issue copying the scripts *pl into the bin folder. (you said that the first step finsished succesfully ¿?)

But after, when you have been used the file install.sh you could not run any step, neither the first step? Did you get any error message after the installation?

it seems that all the modules/programs did not install in /bin (e.g. Samtools, Tiny) When do you type in the Terminal, what path do you get? $ whereis samtools

Please, Could you try the pre-compiled version for Linux? You can find it in the following direction: http://www.ub.edu/softevol/domino/ (You have to give the execution permission of the executable files)

Thanks in advance,

Cristina Frías-López PhD student Evolutionary Genomics and Bioinformatics

Departament de Genètica, Microbiologia i Estadística Secció de Genètica Biomèdica, Evolutiva i del Desenvolupament Facultat de Biologia Universitat de Barcelona Av. Diagonal 643 08028 Barcelona

Telf: +34 93 4035305 e-mail: cristinafriaslopez@ub.edu web: http://molevol.bio.ub.edu/


De: entobento [notifications@github.com] Enviat el: dimecres, 6 / setembre / 2017 20:41 Per a: molevol-ub/DOMINO A/c: Subscribed Tema: Re: [molevol-ub/DOMINO] Cannot Run via Command Line on Linux system (#3)

Thanks so much for getting back to me Jose, I am sorry to say that I did install it via command line in Linux (using install.sh)... as such this is definitly a bug, at least on my machine. All the scripts definitly copied to the /bin folder, but as pointed out in another issue, it seems that all the modules/programs did not install in /bin (e.g. Samtools, Tiny). I am not sure why this is an issue with my Linux machine and potentially not yours, but it may be because I only have access to the local directory of the HPC.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/molevol-ub/DOMINO/issues/3#issuecomment-327576513, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ATZOqJl_zqW3rjgAAguHABeJAo6dxeIEks5sfudCgaJpZM4PIHta.

Aquest correu electrònic i els annexos poden contenir informació confidencial o protegida legalment i està adreçat exclusivament a la persona o entitat destinatària. Si no sou el destinatari final o la persona encarregada de rebre’l, no esteu autoritzat a llegir-lo, retenir-lo, modificar-lo, distribuir-lo, copiar-lo ni a revelar-ne el contingut. Si heu rebut aquest correu electrònic per error, us preguem que n’informeu al remitent i que elimineu del sistema el missatge i el material annex que pugui contenir. Gràcies per la vostra col·laboració.

Este correo electrónico y sus anexos pueden contener información confidencial o legalmente protegida y está exclusivamente dirigido a la persona o entidad destinataria. Si usted no es el destinatario final o la persona encargada de recibirlo, no está autorizado a leerlo, retenerlo, modificarlo, distribuirlo, copiarlo ni a revelar su contenido. Si ha recibido este mensaje electrónico por error, le rogamos que informe al remitente y elimine del sistema el mensaje y el material anexo que pueda contener. Gracias por su colaboración.

This email message and any documents attached to it may contain confidential or legally protected material and are intended solely for the use of the individual or organization to whom they are addressed. We remind you that if you are not the intended recipient of this email message or the person responsible for processing it, then you are not authorized to read, save, modify, send, copy or disclose any of its contents. If you have received this email message by mistake, we kindly ask you to inform the sender of this and to eliminate both the message and any attachments it carries from your account. Thank you for your collaboration.

Aquest correu electrònic i els annexos poden contenir informació confidencial o protegida legalment i està adreçat exclusivament a la persona o entitat destinatària. Si no sou el destinatari final o la persona encarregada de rebre’l, no esteu autoritzat a llegir-lo, retenir-lo, modificar-lo, distribuir-lo, copiar-lo ni a revelar-ne el contingut. Si heu rebut aquest correu electrònic per error, us preguem que n’informeu al remitent i que elimineu del sistema el missatge i el material annex que pugui contenir. Gràcies per la vostra col·laboració.

Este correo electrónico y sus anexos pueden contener información confidencial o legalmente protegida y está exclusivamente dirigido a la persona o entidad destinataria. Si usted no es el destinatario final o la persona encargada de recibirlo, no está autorizado a leerlo, retenerlo, modificarlo, distribuirlo, copiarlo ni a revelar su contenido. Si ha recibido este mensaje electrónico por error, le rogamos que informe al remitente y elimine del sistema el mensaje y el material anexo que pueda contener. Gracias por su colaboración.

This email message and any documents attached to it may contain confidential or legally protected material and are intended solely for the use of the individual or organization to whom they are addressed. We remind you that if you are not the intended recipient of this email message or the person responsible for processing it, then you are not authorized to read, save, modify, send, copy or disclose any of its contents. If you have received this email message by mistake, we kindly ask you to inform the sender of this and to eliminate both the message and any attachments it carries from your account. Thank you for your collaboration.

entobento commented 7 years ago

Hi Cristina, Thanks for getting back to me. I am using Scientific Linux vers. 6.7.

So I installed everything using the following $ git clone https://github.com/molevol-ub/DOMINO.git $ cd DOMINO $ make $ sh install.sh

I then encountered the problems with the perl module (Tiny) and samtools 1.3.1. I solved these issues by downloading the perl module and putting it in the appropriate directory in the /bin folder, and doing the same with Samtools. After I did that I was able to run step 1-3 without error (except that no makers were detected in the example data).

when I type $ whereis samtools I get: samtools:

As I am running this through my personal directory on a Linux based Super computering machine I do not have administrative privlidges. Do I need them to give "execution permission" to "executable files"? If so do you have a snippet of code to do so? I'm guessing it involves chmod?

As I seem to have gotten it to somewhat work, which took quite sometime, I am hesitant to start over with a different version. But if you are sure that compiling from github is the problem I will pursue this.

Thanks for any guidance, a

entobento commented 7 years ago

Hi Cristina and Jose,

As a side, I very much appreciate your help, but I would argue that this issue is not closed given that I did install via install.sh.

best,

a

JFsanchezherrero commented 7 years ago

Dear Adam, I am afraid that I closed the issue as long as you were able to run DOMINO finally. We are working on the debugging of the error and it would be updated soon. In fact, I would like to ask if you had installed zlib or you had checked it before installing DOMINO as it is a pre-requisite for samtools installation. We are writing a small script in order to check if all dependencies and modules are correctly installed before running the software. Thanks, Jose F.

entobento commented 7 years ago

Thanks so much for getting back to me Jose, zlib was installed... that said, I loaded the module after installing DOMINO... The script I used is below:

INSTALL DOMINO

cd /home/avorsino git clone https://github.com/molevol-ub/DOMINO.git cd DOMINO make sh install.sh

module load perl/perl-5.24.1 module load gcc/6.1 module load zlib/1.2.11-gcc module load perl/perl-5.24.1 module load java/jdk-1.8.0_45 module load genetics/samtools-1.5 # as samtools 1.3 installs in the DOMINO packages this is unnecessary module load bowtie2/2.2.5-gcc

I truly appreciate all the help, and hope that my input is helping. Thanks for developing the package/pipeline! I think it fills a much needed void.

best,

a

JFsanchezherrero commented 7 years ago

Hi there, We are dealing with the problems you mentioned and we are going to implement a docker solution.

We would include in docker everything DOMINO relies on in order to avoid missing libraries or modules but also any errors ocurred during the installation.

I will keep you updated if interested. Cheers Jose F.

entobento commented 7 years ago

Thanks Jose! Definitly interested! Thanks for your guidance! a