phylo42 / IPK

Inference of phylo-k-mers
MIT License
4 stars 1 forks source link

Check installation is not complete #16

Open lczech opened 1 year ago

lczech commented 1 year ago

Hi there,

in the Installation doc, it states that

python ipk.py --help

can be used to check the installation. My default python on Ubuntu 20.04.6 LTS is however Python 2.7.18, such that this fails. As ipk.py contains the python3, it might hence be better to use

./ipk.py --help

instead.

Then, the command succeeds. However, I did not make raxml-ng available to IPK yet, and hence when trying to run it, get the error

RuntimeError: RAxML-ng not found. Please check it exists in your PATH or provide a full filename

If the above command is meant to be a check for successful installation, I recommend checking there that raxml-ng is available to IPK :-)

Cheers Lucas

lczech commented 1 year ago

The same is true when the ipk binary is not there. Apparently, it did not compile correctly the first time (not sure why - can't reproduce now), and despite the check above working, I then got

./ipk.py build -w ../test/ -r ../test/dataset.fasta -t ../test/dataset.newick -m GTR -a 0.42 
/path/to/ipk/bin/ipk/ipk-dna --ar-binary /home/lucas/Software/miniconda/bin/raxml-ng --refalign ../test/dataset.fasta -t ../test/dataset.newick -w ../test/ -k 8 --alpha 0.42 --categories 4 --reduction-ratio 0.99 -o 1.5 --no-filter -u 1.0 -j 4 --model GTR
/bin/sh: 1: /path/to/ipk/bin/ipk/ipk-dna: not found
Traceback (most recent call last):
  File "./ipk.py", line 315, in <module>
    ipk()
  File "/home/lucas/Software/miniconda/lib/python3.8/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/lucas/Software/miniconda/lib/python3.8/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/lucas/Software/miniconda/lib/python3.8/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/lucas/Software/miniconda/lib/python3.8/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/lucas/Software/miniconda/lib/python3.8/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "./ipk.py", line 195, in build
    build_database(ar,
  File "./ipk.py", line 305, in build_database
    p = subprocess.run(command_str, shell=True, check=True)
  File "/home/lucas/Software/miniconda/lib/python3.8/subprocess.py", line 516, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '/path/to/ipk/bin/ipk/ipk-dna --ar-binary /home/lucas/Software/miniconda/bin/raxml-ng --refalign ../test/dataset.fasta -t ../test/dataset.newick -w ../test/ -k 8 --alpha 0.42 --categories 4 --reduction-ratio 0.99 -o 1.5 --no-filter -u 1.0 -j 4 --model GTR' returned non-zero exit status 127.

This was fixed after repeating the download and compilation. But I think that when you state that ./ipk.py --help serves as a check of the installation, it should check that all binaries are there ;-)