marbl / parsnp

Parsnp was designed to align the core genome of hundreds to thousands of bacterial genomes within a few minutes to few hours. Input can be both draft assemblies and finished genomes, and output includes variant (SNP) calls, core genome phylogeny and multi-alignments. Parsnp leverages contextual information provided by multi-alignments surrounding SNP sites for filtration/cleaning, in addition to existing tools for recombination detection/filtration and phylogenetic reconstruction.
Other
123 stars 25 forks source link

Parsnp command is not working #123

Closed smruti241 closed 8 months ago

smruti241 commented 1 year ago

@treangen, @skoren, @dsommer, @ondovb, @MihaiPop I ran parsnp command: ./parsnp -g GCF_000005845.2_ASM584v2_genomic.gbff GCF_003697165.2_ASM369716v2_genomic.gbff -d /home/smrutip/smruti/parsnp/genomes/*.fna -o /home/smrutip/smruti/parsnp/output -c

But I got this error: 01:17:23 - CRITICAL - The following command failed:

$ /home/smrutip/smruti/parsnp/bin/parsnp_core /home/smrutip/smruti/parsnp/output/parsnpAligner.ini Please veryify input data and restart Parsnp. If the problem persists please contact the Parsnp development team.

  STDOUT:

  STDERR:
  /bin/bash: /home/smrutip/smruti/parsnp/bin/parsnp_core: No such file or directory

Can you please tell me how to get parsnp core?

bkille commented 1 year ago

Hi @smruti241! Thanks for opening an issue. How did you install parsnp?

smruti241 commented 1 year ago

@bkille I installed all the tools mentioned in the github page "To build Parsnp from source, users must have automake 1.15, autoconf, and libtool installed. Parsnp also requires RaxML, Phipack, Harvest-tools, and numpy. Some additional features require Mash, FastANI and FastTree. All of these packages are available via Conda (many on the Bioconda channel)." Then used git clone to install. Conda command is giving error

smruti241 commented 1 year ago

it would be fine if conda installation command works.

bkille commented 1 year ago

@smruti241 and after git clone, you ran the build commands:

cd ..
./autogen.sh
./configure
make LDADD=-lMUSCLE-3.7 
make install

with no error?

Also, do you mind if I ask what the conda error was? Have your channels been set up as described here?

smruti241 commented 1 year ago

yes I ran the build commands. I got error at this time. I didnt see any channels described in the github page

bkille commented 1 year ago

Hi, what was the error you got when building?

Also, the hyperlink in the conda section of the README should take you to the Bioconda channel setup instructions. I will add a section in the README to make it more clear!

-Bryce

smruti241 commented 1 year ago

it gave error 1 status while running make install

bkille commented 1 year ago

Was there an error message? Regardless, I'd suggest setting up the bioconda channel and installing that way, should be smoother.

smruti241 commented 1 year ago

so shall I uninstall and then install again?

smruti241 commented 1 year ago

after setting up the bioconda channel, then I have to install parsnp using conda?

bkille commented 1 year ago

after setting up the bioconda channel, then I have to install parsnp using conda?

Correct

smruti241 commented 1 year ago

ok let me try once

smruti241 commented 1 year ago

I tried to add bioconda channels and installed the parsnp using conda but this gave me error: (parsnp) smrutip@iiitd:~/smruti$ conda install parsnp Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.

ResolvePackageNotFound:

smruti241 commented 1 year ago

while using make install, it is giving me error: /usr/bin/ld: cannot find -lMUSCLE-3.7 /usr/bin/ld: cannot find -lMUSCLE-3.7 collect2: error: ld returned 1 exit status make[1]: [Makefile:360: parsnp_core] Error 1 make[1]: Leaving directory '/home/smrutip/smruti/parsnp/src' make: [Makefile:339: all-recursive] Error 1 (parsnp) smrutip@iiitd:~/smruti/parsnp$ make install Making install in src make[1]: Entering directory '/home/smrutip/smruti/parsnp/src' g++ -fopenmp -O2 -m64 -funroll-all-loops -fomit-frame-pointer -ftree-vectorize -g -O2 -fopenmp -lstdc++ -lpthread -std=gnu++0x -L/home/smrutip/anaconda3/envs/parsnp/lib -lMUSCLE-3.7 -o parsnp_core parsnp_core-MuscleInterface.o parsnp_core-parsnp.o parsnp_core-LCB.o parsnp_core-LCR.o parsnp_core-TMum.o parsnp_core-Converter.o parsnp_core-iniFile.o /usr/bin/ld: cannot find -lMUSCLE-3.7 collect2: error: ld returned 1 exit status make[1]: [Makefile:360: parsnp_core] Error 1 make[1]: Leaving directory '/home/smrutip/smruti/parsnp/src' make: [Makefile:339: install-recursive] Error 1

bkille commented 1 year ago

I tried to add bioconda channels and installed the parsnp using conda but this gave me error:

(parsnp) smrutip@iiitd:~/smruti$ conda install parsnp

Collecting package metadata (current_repodata.json): done

Solving environment: failed with initial frozen solve. Retrying with flexible solve.

Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.

ResolvePackageNotFound:

  • python=3.1

You'll need an environment with a much more recent version of Python. Python 3.1 was released in 2009. Try installing with an environment using Python 3.7

bkille commented 1 year ago

while using make install, it is giving me error:

/usr/bin/ld: cannot find -lMUSCLE-3.7

/usr/bin/ld: cannot find -lMUSCLE-3.7

collect2: error: ld returned 1 exit status

make[1]: *** [Makefile:360: parsnp_core] Error 1

make[1]: Leaving directory '/home/smrutip/smruti/parsnp/src'

make: *** [Makefile:339: all-recursive] Error 1

(parsnp) smrutip@iiitd:~/smruti/parsnp$ make install

Making install in src

make[1]: Entering directory '/home/smrutip/smruti/parsnp/src'

g++ -fopenmp -O2 -m64 -funroll-all-loops -fomit-frame-pointer -ftree-vectorize -g -O2 -fopenmp -lstdc++ -lpthread -std=gnu++0x -L/home/smrutip/anaconda3/envs/parsnp/lib -lMUSCLE-3.7 -o parsnp_core parsnp_core-MuscleInterface.o parsnp_core-parsnp.o parsnp_core-LCB.o parsnp_core-LCR.o parsnp_core-TMum.o parsnp_core-Converter.o parsnp_core-iniFile.o

/usr/bin/ld: cannot find -lMUSCLE-3.7

collect2: error: ld returned 1 exit status

make[1]: *** [Makefile:360: parsnp_core] Error 1

make[1]: Leaving directory '/home/smrutip/smruti/parsnp/src'

make: *** [Makefile:339: install-recursive] Error 1

It looks like it can't find the muscle library. Did you build the muscle library with the following commands?


cd muscle
./autogen.sh
./configure --prefix=$PWD CXXFLAGS='-fopenmp'
make install
smruti241 commented 1 year ago

I tried to add bioconda channels and installed the parsnp using conda but this gave me error: (parsnp) smrutip@iiitd:~/smruti$ conda install parsnp Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source. ResolvePackageNotFound:

  • python=3.1

You'll need an environment with a much more recent version of Python. Python 3.1 was released in 2009. Try installing with an environment using Python 3.7

I have python 3.10 version

smruti241 commented 1 year ago

while using make install, it is giving me error: /usr/bin/ld: cannot find -lMUSCLE-3.7 /usr/bin/ld: cannot find -lMUSCLE-3.7 collect2: error: ld returned 1 exit status make[1]: [Makefile:360: parsnp_core] Error 1 make[1]: Leaving directory '/home/smrutip/smruti/parsnp/src' make: [Makefile:339: all-recursive] Error 1 (parsnp) smrutip@iiitd:~/smruti/parsnp$ make install Making install in src make[1]: Entering directory '/home/smrutip/smruti/parsnp/src' g++ -fopenmp -O2 -m64 -funroll-all-loops -fomit-frame-pointer -ftree-vectorize -g -O2 -fopenmp -lstdc++ -lpthread -std=gnu++0x -L/home/smrutip/anaconda3/envs/parsnp/lib -lMUSCLE-3.7 -o parsnp_core parsnp_core-MuscleInterface.o parsnp_core-parsnp.o parsnp_core-LCB.o parsnp_core-LCR.o parsnp_core-TMum.o parsnp_core-Converter.o parsnp_core-iniFile.o /usr/bin/ld: cannot find -lMUSCLE-3.7 collect2: error: ld returned 1 exit status make[1]: [Makefile:360: parsnp_core] Error 1 make[1]: Leaving directory '/home/smrutip/smruti/parsnp/src' make: [Makefile:339: install-recursive] Error 1

It looks like it can't find the muscle library. Did you build the muscle library with the following commands?


cd muscle
./autogen.sh
./configure --prefix=$PWD CXXFLAGS='-fopenmp'
make install

yeah I used this. there was no error

bkille commented 1 year ago

I tried to add bioconda channels and installed the parsnp using conda but this gave me error:

(parsnp) smrutip@iiitd:~/smruti$ conda install parsnp

Collecting package metadata (current_repodata.json): done

Solving environment: failed with initial frozen solve. Retrying with flexible solve.

Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.

ResolvePackageNotFound:

  • python=3.1

You'll need an environment with a much more recent version of Python. Python 3.1 was released in 2009. Try installing with an environment using Python 3.7

I have python 3.10 version

It looks like your conda version may need to be updated https://stackoverflow.com/a/70304326

bkille commented 8 months ago

Hi @smruti241,

It looks like the Makefile was expecting the muscle library to be obtained from conda. I've updated the repo so that your Muscle library can be from Conda or built locally