bcgsc / ntSynt

Detecting multi-genome synteny using minimizer graph mapping
GNU General Public License v3.0
63 stars 1 forks source link

ntSynt installation #42

Closed Yunxiao-web closed 2 months ago

Yunxiao-web commented 2 months ago

Hello, thanks for developing this great tool. There is a problem here. I am testing my ntSynt installation. Following the tutorial, I enter the command: ./run_ntSynt_demo.sh. But encountered an error: /usr/bin/bash: /ngsproject/yunxiao/tools/ntSynt-main/bin/ntsynt_make_common_bf: No such file or directory. And I did not find ntsynt_make_common_bf in the bin directory installed. Does this require me to install this subfunction again? Thank you in advance!

And this is the log file:

Running ntSynt Demo...
This demo assumes that you have the 'ntSynt' script in your PATH
+ echo 'Decompressing input files..'
Decompressing input files..
+ '[' -e celegans-chrII-III.fa.gz ']'
+ echo 'Running ntSynt with 2 input genomes'
Running ntSynt with 2 input genomes
+ ntSynt celegans-chrII-III.fa celegans-chrII-III.A.fa --prefix celegans-A-ntSynt -d 0.5 --merge 3000 --indel 500

Running ntSynt...
Specified percent divergence: 0.5
Parameter settings:
        fastas ['celegans-chrII-III.fa', 'celegans-chrII-III.A.fa']
        --divergence 0.5
        --block_size 500
        --merge 3000
        --w_rounds [100, 10]
        --indel 500
        -p celegans-A-ntSynt
        -k 24
        -w 1000
        -t 12
        --fpr 0.025
Running snakemake -s /ngsproject/yunxiao/tools/ntSynt-main/bin/ntsynt_run_pipeline.smk -p --cores 12 --config references='['celegans-chrII-III.fa', 'celegans-chrII-III.A.fa']' k=24 w=1000 t=12 fpr=0.025 prefix=celegans-A-ntSynt w_rounds='100 10' indel_merge=500 collinear_merge=3000 block_size=500 common=True simplify_graph=True benchmark=False dev=False --resources load=2 --rerun-trigger mtime
Assuming unrestricted shared filesystem usage.
Building DAG of jobs...
Using shell: /usr/bin/bash
Provided cores: 12
Rules claiming more threads will be scaled down.
Provided resources: load=2
Job stats:
job               count
--------------  -------
all                   1
faidx                 2
indexlr               2
make_common_bf        1
ntsynt_synteny        1
total                 7

Select jobs to execute...
Execute 1 jobs...

[Mon Apr 29 22:34:27 2024]
localrule make_common_bf:
    input: celegans-chrII-III.fa, celegans-chrII-III.A.fa
    output: celegans-A-ntSynt.common.bf
    jobid: 2
    reason: Missing output files: celegans-A-ntSynt.common.bf
    threads: 12
    resources: tmpdir=/tmp

 /ngsproject/yunxiao/tools/ntSynt-main/bin/ntsynt_make_common_bf --genome celegans-chrII-III.fa celegans-chrII-III.A.fa -p celegans-A-ntSynt.common --fpr 0.025 -k 24 -t 12
/usr/bin/bash: /ngsproject/yunxiao/tools/ntSynt-main/bin/ntsynt_make_common_bf: No such file or directory
[Mon Apr 29 22:34:27 2024]
Error in rule make_common_bf:
    jobid: 2
    input: celegans-chrII-III.fa, celegans-chrII-III.A.fa
    output: celegans-A-ntSynt.common.bf
    shell:
         /ngsproject/yunxiao/tools/ntSynt-main/bin/ntsynt_make_common_bf --genome celegans-chrII-III.fa celegans-chrII-III.A.fa -p celegans-A-ntSynt.common --fpr 0.025 -k 24 -t 12
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2024-04-29T223427.221095.snakemake.log
WorkflowError:
At least one job did not complete successfully.
Traceback (most recent call last):
  File "/ngsproject/yunxiao/tools/ntSynt-main/bin/ntSynt", line 175, in <module>
    main()
  File "/ngsproject/yunxiao/tools/ntSynt-main/bin/ntSynt", line 170, in main
    raise subprocess.SubprocessError("ntSynt failed - check the logs for the error.")
subprocess.SubprocessError: ntSynt failed - check the logs for the error.
lcoombe commented 2 months ago

Hi @Yunxiaobest,

A couple follow-up questions so I can best help - How did you install ntSynt (what method, and what were your install commands)? If it was via the source code (with the meson build system commands), did you ensure that you added the installation path for your PATH environment variable?

Thank you for your interest in ntSynt! Lauren

Yunxiao-web commented 2 months ago

Hi Lauren, thanks for quick reply! I downloaded the ZIP file of ntSynt by clicking the "Download ZIP" button under the "Code" button, and I added the installation path for my PATH environment variables, but encountered the error message above. Instead, I installed ntSynt via conda and now it can run successfully. Thanks a lot!

lcoombe commented 2 months ago

Hi @Yunxiaobest,

Awesome - Glad to hear you got the installation working via conda! That's normally the easiest method of installation :)

Lauren