Giter VIP home page Giter VIP logo

soapdenovo2's People

Contributors

aquaskyline avatar bmpvieira avatar cchd0001 avatar t-endo avatar twmccart avatar xusailor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

soapdenovo2's Issues

About the setting of parameters

hello,
I am using SOAPdenovo2 to assemble a highly heterozygous plant genome with a genome size of 700M. However, the assembly results are not ideal. Can you give me some suggestions about the parameter settings during the assembly process?
thanks

set proper input

I'm trying to set output of Minia assembler(a contig file : contig.fa ) as input of SOAPdenovo-fusion to scaffold my contigs.
As is searched in the net and also previous issues I understood that this line of code could be useful:
SOAPdenovo-fusion -D -K 41 -c ./final.contigs.fa
but unfortunately, the result does not match with my expectation to see a .fa file which is concluded by scaffolding contigs and is my genome. and only is some files about my data.
in the next step, I decided to try this line of code:
SOAPdenovo-fusion -s ./config -p 8 -K 41 -g final.contigs -c ./final.contigs.fa
however, I don't know what the config file is when I don't have any other setting.

In summary, I need a command to set 1.my contig file 2. K size and get the result in fa format which is my genome.

I'm in an emergency
Thanks for any help.

Segmentation fault while reading fastq files

Hi SOAPdenovo2 dev team,
I would like to report a strange issue in the initial stages of running SOAPdenovo2. The program exits with a segmentation fault and core dump.

The error looks like this

183578 Memory Access Error (Memory Dump Written)

My stdout looks like this :

Version 2.04: released on July 13th, 2012
Compile Jan 27 2015     11:50:30

********************
Pregraph
********************

Parameters: pregraph -s /data/idiv_schielzeth/Grasshoppers/Gsib_Green_Brown_HiSeqX_libs_2018/F18FTSEUHT0360_G.SbluR/raw_reads/G.sibiricusGreen/assembly/Gsib_GB_final_assembly/config_G.sibGB_half_paired.txt -K 43 -p 16 -R -o assembly_G.sibGB_half_assembly3

In /data/idiv_schielzeth/Grasshoppers/Gsib_Green_Brown_HiSeqX_libs_2018/F18FTSEUHT0360_G.SbluR/raw_reads/G.sibiricusGreen/assembly/Gsib_GB_final_assembly/config_G.sibGB_half_paired.txt, 1 lib(s), maximum read length 150, maximum name length 256.

16 thread(s) initialized.
Import reads from file:
 /data/idiv_schielzeth/Grasshoppers/Bielefeld/Gsib_GB_HiSeqX_final_satminer_run/subsampled/Gsib_GB_R1_half_sample.fastq
Import reads from file:
 /data/idiv_schielzeth/Grasshoppers/Bielefeld/Gsib_GB_HiSeqX_final_satminer_run/subsampled/Gsib_GB_R2_half_sample.fastq
--- 100000000th reads.
--- 200000000th reads.
--- 300000000th reads.

My config file looks like this

#maximal read length
max_rd_len=150
[LIB]
#average insert size
avg_ins=250
#if sequence needs to be reversed
reverse_seq=0
#in which part(s) the reads are used
asm_flags=3
#use only first 100 bps of each read
rd_len_cutoff=150
#in which order the reads are used while scaffolding
rank=1
#cutoff of pair number for a reliable connection (at least 3 for short insert size)
pair_num_cutoff=3
#minimum aligned length to contigs for a reliable read location (at least 32 for short insert size)
map_len=32
#a pair of fastq file, read 1 file should always be followed by read 2 file
q1=/data/idiv_schielzeth/Grasshoppers/Bielefeld/Gsib_GB_HiSeqX_final_satminer_run/subsampled/Gsib_GB_R1_half_sample.fastq
q2=/data/idiv_schielzeth/Grasshoppers/Bielefeld/Gsib_GB_HiSeqX_final_satminer_run/subsampled/Gsib_GB_R2_half_sample.fastq


GapCloser max read size?

Dear developer.
Gap-closer was initially developed to work with reads of a maximum size of 150 nuc.
How does GapCloser react with 2x300 nuc reads ?
Does it use only the first 150 nuc or is the full information in the 300nuc used for gap closing?
Thanks for your help

Erwan

Need assistance

Hello,

I am planning to use soapdenovo to assemble my reads. All my reads are from Illumina but they are not pair ended. The library is also not strand specific. Can I still use soapdenovo to perform the assembling?

Thank you

make err

when I use the command 'make', some err like this:
make
pregraph_sparse_63mer.v1.0.3 cleaning done.
pregraph_sparse_63mer.v1.0.3 objects generated.
SOAPdenovo-63mer cleaning done.
In file included from arc.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc arc.c
In file included from attachPEinfo.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc attachPEinfo.c
In file included from bubble.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc bubble.c
In file included from compactEdge.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc compactEdge.c
In file included from concatenateEdge.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc concatenateEdge.c
In file included from connect.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc connect.c
In file included from contig.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc contig.c
In file included from cutTipPreGraph.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc cutTipPreGraph.c
In file included from cutTip_graph.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc cutTip_graph.c
In file included from kmer.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
kmer.c:600: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc kmer.c
In file included from lib.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc lib.c
In file included from loadGraph.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc loadGraph.c
In file included from loadPath.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc loadPath.c
In file included from loadPreGraph.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc loadPreGraph.c
In file included from localAsm.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc localAsm.c
In file included from main.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc main.c
In file included from map.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc map.c
In file included from mem_manager.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc mem_manager.c
In file included from newhash.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
newhash.c: 在函数‘modular’中:
newhash.c:53: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
newhash.c:53: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
newhash.c:53: 错误:所在的函数内也只报告一次。)
newhash.c:53: 错误:expected ‘;’ before ‘temp’
newhash.c:54: 错误:‘temp’未声明(在此函数内第一次使用)
newhash.c: 在函数‘get_kmerset’中:
newhash.c:246: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
newhash.c:246: 错误:expected ‘;’ before ‘temp’
newhash.c:247: 错误:‘temp’未声明(在此函数内第一次使用)
newhash.c: 在函数‘search_kmerset’中:
newhash.c:288: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
newhash.c:288: 错误:expected ‘;’ before ‘temp’
newhash.c:289: 错误:‘temp’未声明(在此函数内第一次使用)
newhash.c: 在函数‘encap_kmerset’中:
newhash.c:400: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
newhash.c:400: 错误:expected ‘;’ before ‘temp’
newhash.c:422: 错误:‘temp’未声明(在此函数内第一次使用)
newhash.c: 在函数‘put_kmerset’中:
newhash.c:490: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
newhash.c:490: 错误:expected ‘;’ before ‘temp’
newhash.c:491: 错误:‘temp’未声明(在此函数内第一次使用)
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc newhash.c
In file included from node2edge.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc node2edge.c
In file included from orderContig.c:4:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc orderContig.c
In file included from output_contig.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc output_contig.c
In file included from output_pregraph.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc output_pregraph.c
In file included from output_scaffold.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc output_scaffold.c
In file included from pregraph.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc pregraph.c
In file included from prlHashCtg.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc prlHashCtg.c
In file included from prlHashReads.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc prlHashReads.c
In file included from prlRead2Ctg.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc prlRead2Ctg.c
In file included from prlRead2path.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc prlRead2path.c
In file included from prlReadFillGap.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc prlReadFillGap.c
In file included from read2scaf.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc read2scaf.c
In file included from readInterval.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc readInterval.c
In file included from readseq1by1.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc readseq1by1.c
In file included from scaffold.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc scaffold.c
In file included from searchPath.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc searchPath.c
In file included from seq.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc seq.c
In file included from splitReps.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc splitReps.c
In file included from cutTip_graph2.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc cutTip_graph2.c
In file included from linearEdge.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc linearEdge.c
In file included from kmerhash.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
kmerhash.c: 在函数‘modular’中:
kmerhash.c:55: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
kmerhash.c:55: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
kmerhash.c:55: 错误:所在的函数内也只报告一次。)
kmerhash.c:55: 错误:expected ‘;’ before ‘temp’
kmerhash.c:56: 错误:‘temp’未声明(在此函数内第一次使用)
kmerhash.c: 在函数‘get_kmerset2’中:
kmerhash.c:217: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
kmerhash.c:217: 错误:expected ‘;’ before ‘temp’
kmerhash.c:218: 错误:‘temp’未声明(在此函数内第一次使用)
kmerhash.c: 在函数‘search_kmerset2’中:
kmerhash.c:268: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
kmerhash.c:268: 错误:expected ‘;’ before ‘temp’
kmerhash.c:269: 错误:‘temp’未声明(在此函数内第一次使用)
kmerhash.c: 在函数‘encap_kmerset2’中:
kmerhash.c:391: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
kmerhash.c:391: 错误:expected ‘;’ before ‘temp’
kmerhash.c:409: 错误:‘temp’未声明(在此函数内第一次使用)
kmerhash.c: 在函数‘put_kmerset2’中:
kmerhash.c:472: 错误:‘__uint128_t’未声明(在此函数内第一次使用)
kmerhash.c:472: 错误:expected ‘;’ before ‘temp’
kmerhash.c:473: 错误:‘temp’未声明(在此函数内第一次使用)
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc kmerhash.c
In file included from read2edge.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc read2edge.c
In file included from iterate.c:26:
inc/extfunc.h:215: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘Kmer2int128’
Error in command: gcc -c -O3 -fomit-frame-pointer -w -DMER63 -Iinc iterate.c
SOAPdenovo-63mer objects generated.
/usr/bin/ld: skipping incompatible ./standardPregraph/inc/libz.so when searching for -lz
/usr/bin/ld: skipping incompatible ./sparsePregraph/inc/libbam.a when searching for -lbam
/usr/bin/ld: skipping incompatible ./standardPregraph/inc/libbam.a when searching for -lbam
/usr/bin/ld: cannot find -lbam
collect2: ld 返回 1
make: *** [SOAPdenovo-63mer] 错误

please help

Error while Installation $make

root@mp103:~/3_softwares_installed/SOAPdenovo2# make
pregraph_sparse_63mer.v1.0.3 cleaning done.
pregraph_sparse_63mer.v1.0.3 objects generated.
SOAPdenovo-63mer cleaning done.
SOAPdenovo-63mer objects generated.
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC /usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam_import.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(sam.o): relocation R_X86_64_32 against .rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC /usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam_pileup.o): relocation R_X86_64_32 against .rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(faidx.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC /usr/bin/ld: ./sparsePregraph/inc/libbam.a(knetfile.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(sam_header.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC /usr/bin/ld: ./sparsePregraph/inc/libbam.a(bgzf.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(kstring.o): relocation R_X86_64_32 against .text' can not be used when making a PIE object; recompile with -fPIC /usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam_aux.o): relocation R_X86_64_32S against .rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(razf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
Makefile:56: recipe for target 'SOAPdenovo-63mer' failed
make: *** [SOAPdenovo-63mer] Error 1

When reading in ".links" file, the first line with real data will be ignored.


flag2 = inputLinks ( fp, pes[i].insertS, line );

I think the original purpose of code on line 5793 was to ignore the first line, which contains the label for each column in ".link" file (like what you did with ".readOnContig.gz" file). But in practice, it doesn't have such a line when it is generated by outputLinks(). As a result, on line 5827, when the file is parsed by inputLinks(), the first line with real data will be ignored.
The difference of number of records for ".links" file can also be detected by the stderr message ("new connections" after loading pair-end reads info and "Total PE links" when constructing scaffold) when using only one LIB. I hope I was wrong about the code, but could you please check the corresponding part to see if there is something wrong going on, I believe the problem is also in "fusion" part of the project.
Thanks.

reading too few reads? Not supporting gz format?!

Hello,
I try to run SOAPdenovo with around 10g data, however, It seems cannot properly reads the raw reads:


Pregraph


Parameters: pregraph -s config_file -d 1 -p 24 -K 37 -R -o s_1

In config_file, 1 lib(s), maximum read length 150, maximum name length 256.

24 thread(s) initialized.
Import reads from file:
path/s_1_HHMYJDSXX_L3_1.fq.gz
Import reads from file:
path/s_1_HHMYJDSXX_L3_2.fq.gz
Time spent on hashing reads: 1s, 356 read(s) processed.
LIB(s) information:
[LIB] 0, avg_ins 350, reverse 0.
37344 node(s) allocated, 39516 kmer(s) in reads, 39516 kmer(s) processed.
done hashing nodes
35172 kmer(s) removed.
Time spent on delowcvgNode: 0s.
2098 linear node(s) marked.
Time spent on marking linear nodes: 0s.
Time spent on pre-graph construction: 1s.

Does it not support the gz format? I try to unzip the fq and it works well again.

Thanks!

16435 Segmentation fault during pregraph step

Hi there,

Could someone please give some information on the following error:

/var/spool/PBS/mom_priv/jobs/1701598.sched01.SC: line 18: 16435 Segmentation fault

In the other error file:


Pregraph


Parameters: pregraph -s /home/astander2/lustre/00_GenomeRooibos/05_FullRuns/01_SOAPdenovo2/00_LargeSubset/00_ConfigFile.txt -K 53 -p 56 -R -o SOAPK53_LargeSub.graph

In /home/astander2/lustre/00_GenomeRooibos/05_FullRuns/01_SOAPdenovo2/00_LargeSubset/00_ConfigFile.txt, 3 lib(s), maximum read length 125, maximum name length 256.

56 thread(s) initialized.
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/L5R1n_p.fastq.gz
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/L5R2n_p.fastq.gz
--- 100000000th reads.
--- 200000000th reads.
--- 300000000th reads.
--- 400000000th reads.
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/L6R1n_p.fastq.gz
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/L6R2n_p.fastq.gz
--- 500000000th reads.
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L1R1_p.fastq.gz
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L1R2_p.fastq.gz
--- 600000000th reads.
--- 700000000th reads.
--- 800000000th reads.
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L2R1_p.fastq.gz
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L2R2_p.fastq.gz
--- 900000000th reads.
--- 1000000000th reads.
--- 1100000000th reads.
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L3R1s17_p.fastq.gz
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L3R2s17_p.fastq.gz
--- 1200000000th reads.
--- 1300000000th reads.
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L4R1_p.fastq.gz
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/S1L4R2_p.fastq.gz
--- 1400000000th reads.
--- 1500000000th reads.
--- 1600000000th reads.
--- 1700000000th reads.
Time spent on hashing reads: 14372s, 1743581530 read(s) processed.
LIB(s) information:
[LIB] 0, avg_ins 300, reverse 0.
[LIB] 1, avg_ins 3000, reverse 1.
[LIB] 2, avg_ins 8000, reverse 1.
31381462521 node(s) allocated, 118774619742 kmer(s) in reads, 118774619742 kmer(s) processed.
done hashing nodes
29884555734 linear node(s) marked.
Time spent on marking linear nodes: 361s.
Time spent on pre-graph construction: 14734s.

Start to remove frequency-one-kmer tips shorter than 106.
Total 734662439 tip(s) removed.
56 thread(s) initialized.
333566414 linear node(s) marked.
Start to remove tips with minority links.
49302346 tip(s) removed in cycle 1.
160412 tip(s) removed in cycle 2.
599 tip(s) removed in cycle 3.
1 tip(s) removed in cycle 4.
0 tip(s) removed in cycle 5.
Total 49463358 tip(s) removed.
56 thread(s) initialized.
0 linear node(s) marked.
Time spent on removing tips: 31000s.

--- 10000000 edge(s) built.
--- 20000000 edge(s) built.
--- 30000000 edge(s) built.
--- 40000000 edge(s) built.
--- 50000000 edge(s) built.
--- 60000000 edge(s) built.
--- 70000000 edge(s) built.
--- 90000000 edge(s) built.
--- 150000000 edge(s) built.
--- 160000000 edge(s) built.
--- 180000000 edge(s) built.
--- 220000000 edge(s) built.
--- 230000000 edge(s) built.
--- 280000000 edge(s) built.
--- 300000000 edge(s) built.
--- 310000000 edge(s) built.
--- 330000000 edge(s) built.
--- 340000000 edge(s) built.
--- 350000000 edge(s) built.
--- 360000000 edge(s) built.
--- 380000000 edge(s) built.
--- 440000000 edge(s) built.
--- 450000000 edge(s) built.
494087158 (247046261) edge(s) and 47488856 extra node(s) constructed.
Time spent on constructing edges: 7811s
.

In file: /home/astander2/lustre/00_GenomeRooibos/05_FullRuns/01_SOAPdenovo2/00_LargeSubset/00_ConfigFile.txt, max seq len 125, max name len 256.
56 thread(s) initialized.
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/L5R1n_p.fastq.gz
Import reads from file:
/home/astander2/lustre/00_GenomeRooibos/03_CleanNoFBT/00_PairedFiles/L5R2n_p.fastq.gz

Any information on what may be causing this, would be much appreciated.

Regards,
Allison

contig failing on bubble pinching

It segfaults very shortly after Start to pinch bubbles.

I had seen the error message Error : Number of vertex is out of range, but can't seem to get it to reproduce that at the moment.

I'm running from a fresh pull (2015-09-28) and build on Ubuntu 14.04.3 LTS.

Sequence orientation of the output?

Hi, could you tell me what the sequence orientation of the contigs and scaffolds produced by SOAPdenovo2 is? Are these sequences all on one single DNA strand or on both '+' and '-' DNA strands? Thank you!

Crashed building contigs

I'm trying to do a very large de-novo assembly on a machine with 6TB of RAM. The input data is a mix of 150 and 250bp PE and MP reads and the pregraph step was using 4TB of RAM but completed without issue. Once it moved to the contig step it immediately crashes with the following error:

Parameters: contig -g Prad_HiSeq -M 1 -R -s Prad_HiSeq.config -p 72

There are 859994916 kmer(s) in vertex file.
There are 1659176686 edge(s) in edge file.
Ran out of memory while applying -13679802112bytes
There may be errors as follows:

  1. Not enough memory.
  2. The ARRAY may be overrode.
  3. The wild pointers.

The negative value looks like a signed variable overflowing to me. I believe we have enough RAM.

Make error with Ubuntu 18.04 LTS

Under Ubuntu 18.04 LTS, the error persists even if with locally compiled libbam.a. (I haven't had any problem under Ubuntu 14.04 LTS though)
Here's result with local libbam.a :

pregraph_sparse_63mer.v1.0.3 cleaning done.
pregraph_sparse_63mer.v1.0.3 objects generated.
SOAPdenovo-63mer cleaning done.
SOAPdenovo-63mer objects generated.
sparsePregraph/io_func.o: In function `read1seqbam(char*, char*, int, samfile_t*, int*) [clone .constprop.58]':
io_func.cpp:(.text+0x47): undefined reference to `samread'
io_func.cpp:(.text+0xe2): undefined reference to `bam_format1_core'
sparsePregraph/io_func.o: In function `read1seqbam(char*, char*, int, samfile_t*, int*)':
io_func.cpp:(.text+0x66a): undefined reference to `samread'
io_func.cpp:(.text+0x70a): undefined reference to `bam_format1_core'
standardPregraph/readseq1by1.o: In function `read1seqbam':
readseq1by1.c:(.text+0xac7): undefined reference to `samread'
readseq1by1.c:(.text+0xaec): undefined reference to `bam_format1_core'
./sparsePregraph/inc/libbam.a(sam.o): In function `samthreads':
/home/yisoo/samtools-1.9/sam.c:35: undefined reference to `hts_get_format'
/home/yisoo/samtools-1.9/sam.c:36: undefined reference to `bgzf_mt'
./sparsePregraph/inc/libbam.a(sam.o): In function `samopen':
/home/yisoo/samtools-1.9/sam.c:43: undefined reference to `hts_open'
/home/yisoo/samtools-1.9/sam.c:55: undefined reference to `hts_set_fai_filename'
/home/yisoo/samtools-1.9/sam.c:61: undefined reference to `sam_hdr_read'
/home/yisoo/samtools-1.9/sam.c:68: undefined reference to `hts_verbose'
/home/yisoo/samtools-1.9/sam.c:72: undefined reference to `hts_get_format'
/home/yisoo/samtools-1.9/sam.c:76: undefined reference to `sam_hdr_write'
/home/yisoo/samtools-1.9/sam.c:77: undefined reference to `hts_verbose'
/home/yisoo/samtools-1.9/sam.c:79: undefined reference to `hts_close'
/home/yisoo/samtools-1.9/sam.c:48: undefined reference to `hts_close'
./sparsePregraph/inc/libbam.a(sam.o): In function `samclose':
/home/yisoo/samtools-1.9/sam.c:92: undefined reference to `bam_hdr_destroy'
/home/yisoo/samtools-1.9/sam.c:93: undefined reference to `hts_close'
./sparsePregraph/inc/libbam.a(sam.o): In function `samfetch':
/home/yisoo/samtools-1.9/sam.c:100: undefined reference to `bam_init1'
/home/yisoo/samtools-1.9/sam.c:101: undefined reference to `sam_itr_queryi'
/home/yisoo/samtools-1.9/sam.c:103: undefined reference to `hts_itr_next'
/home/yisoo/samtools-1.9/sam.c:104: undefined reference to `hts_itr_destroy'
/home/yisoo/samtools-1.9/sam.c:105: undefined reference to `bam_destroy1'
./sparsePregraph/inc/libbam.a(sam.o): In function `sampileup':
/home/yisoo/samtools-1.9/sam.c:114: undefined reference to `bam_init1'
./sparsePregraph/inc/libbam.a(sam.o): In function `samread':
/home/yisoo/samtools-1.9/sam.h:95: undefined reference to `sam_read1'
./sparsePregraph/inc/libbam.a(sam.o): In function `sampileup':
/home/yisoo/samtools-1.9/sam.c:125: undefined reference to `bam_destroy1'
./sparsePregraph/inc/libbam.a(sam.o): In function `samfaipath':
/home/yisoo/samtools-1.9/sam.c:139: undefined reference to `hts_verbose'
/home/yisoo/samtools-1.9/sam.c:140: undefined reference to `fai_build'
./sparsePregraph/inc/libbam.a(bam_plbuf.o): In function `bam_plbuf_init':
/home/yisoo/samtools-1.9/bam_plbuf.c:47: undefined reference to `bam_plp_init'
./sparsePregraph/inc/libbam.a(bam_plbuf.o): In function `bam_plbuf_destroy':
/home/yisoo/samtools-1.9/bam_plbuf.c:55: undefined reference to `bam_plp_destroy'
./sparsePregraph/inc/libbam.a(bam_plbuf.o): In function `bam_plbuf_push':
/home/yisoo/samtools-1.9/bam_plbuf.c:63: undefined reference to `bam_plp_push'
/home/yisoo/samtools-1.9/bam_plbuf.c:65: undefined reference to `bam_plp_next'
./sparsePregraph/inc/libbam.a(bam_plbuf.o): In function `bam_plbuf_reset':
/home/yisoo/samtools-1.9/bam_plbuf.c:40: undefined reference to `bam_plp_reset'
collect2: error: ld returned 1 exit status
Makefile:56: recipe for target 'SOAPdenovo-63mer' failed
make: *** [SOAPdenovo-63mer] Error 1

and with shipped libbam.a :

pregraph_sparse_63mer.v1.0.3 objects generated.
SOAPdenovo-63mer cleaning done.
SOAPdenovo-63mer objects generated.
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam_import.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(sam.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam_pileup.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(faidx.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(knetfile.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(sam_header.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(bgzf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(kstring.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(bam_aux.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ./sparsePregraph/inc/libbam.a(razf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
Makefile:56: recipe for target 'SOAPdenovo-63mer' failed
make: *** [SOAPdenovo-63mer] Error 1```

_Originally posted by @elvenwhite in https://github.com/aquaskyline/SOAPdenovo2/issues/39#issuecomment-493906074_

SOAPdenovo-127mer going only to kmer of 63

I am running SOAPdenovo2 v2.04-r214
When I run SOAPdenovo-127mer with a -K 67 it will not go over a kmer of
63.
Your guidance will be much appreciated
Cheers
Olivia

example of portions of output:


Pregraph


Parameters: pregraph -s
../MK_SOAPdenovo.config -K 67 -R -o output/MK
K should not be greater than
63.
In ../MK_SOAPdenovo.config, 1 lib(s), maximum read length 250, maximum
name length 256
................


Map


Parameters: map -s ../MK_SOAPdenovo.config -g output/MK -K 67
Kmer size:63.
Contig length cutoff: 65.

My run command is:
/home/tools/SOAPdenovo2/SOAPdenovo-127mer all -s ../MK_SOAPdenovo.config -o
output/MK -K 67 -R

My config file:
#MKconfig file
#maximal read length
max_rd_len=250
[LIB]
#average insert size
avg_ins=550
#if sequence needs to be reversed
reverse_seq=0
#in which part(s) the reads are used
asm_flags=3
#a pair of fastq file, read 1 file should always be followed by read 2 file
q1=/home/MK_R1_001.paired.fastq.gz
q2=/home/MK_R2_001.paired.fastq.gz

incompatible libbam.a

Hi, when "make" the SOAPdenovo2 on the Power8 (ppc64le), it is not able to generate the executables, because of the preexisted libbam.a can not be linked properly.
Here is the error message:
/usr/bin/ld: skipping incompatible ./sparsePregraph/inc/libbam.a when searching for -lbam
/usr/bin/ld: skipping incompatible ./standardPregraph/inc/libbam.a when searching for -lbam
/usr/bin/ld: cannot find -lbam
collect2: error: ld returned 1 exit status
make: *** [SOAPdenovo-63mer] Error 1

the libraries (libbam.a libbam_1.a ) are already included in the deposit. Please provide a way to figure this issue out.

Segmentation fault during contig step

I am assembling a 2.5 Gbp plant genome (rooibos). The one run with a subset of my data, gave the following error:

In error file:


Contig


Parameters: contig -g SoapK53 -M 1 -R -s 00_SoapConfig -p 16

Kmers sorted.
There is no vertex for kmer 0 c .
There is no vertex for kmer 0 30 .
/var/spool/gridengine/execd/grid05/job_scripts/7525145: line 16: 55940 Segmentation fault
(core dumped)
SOAPdenovo-63mer all -s 00_SoapConfig -K 53 -R -p 16 -o SoapK53 > SoapK53.log 2> SoapK53.err

I am new to bioinformatics, and would appreciate any help or input on how I can fix this.

Kind regards,
Allison

how to choose the kmer number for the genome assembly.

Hi,
when I run graphy and contig, different Kmer results differernt contig size, eg. kmer25=110M, kmer41=58M, does it normal? which number of kmer should be choose for the following analysis???

my illunima date 350bp, PE150,

example.config
max_rd_len=150
[LIB]
avg_ins=350
reverse_seq=0
asm_flags=1
rank=1
f1=/home/workplace/soapdenovo_350/cleanreads/350.1.fasta
f2=/home/workplace/soapdenovo_350/cleanreads/350.2.fasta

Makefile:65: recipe for target 'SOAPdenovo-63mer' failed

Hi, I'm trying to install SOAP from here:
link

Then I made a tar xvzf SOAPdenovo2-src-r240.tgz

And made a make

And I got an error:

/usr/bin/X11/ld: final link failed: Symbol needs debug section which does not exist
collect2: error: ld returned 1 exit status
Makefile:65: recipe for target 'SOAPdenovo-63mer' failed
make: *** [SOAPdenovo-63mer] Error 1

Here is all the report from the make:

make[1]: Entering directory '/panhome/bguinet/TOOLS/SOAPdenovo2-src-r240/sparsePregraph'
pregraph_sparse_63mer.v1.0.3 cleaning done.
multi_threads.cpp: In function 'void* threadRoutine(void*)':
multi_threads.cpp:93:3: error: 'usleep' was not declared in this scope
   usleep ( 1 );
   ^~~~~~
multi_threads.cpp:93:3: note: suggested alternative: 'fseek'
   usleep ( 1 );
   ^~~~~~
   fseek
multi_threads.cpp: In function 'void sendWorkSignal(unsigned char, unsigned char*)':
multi_threads.cpp:115:3: error: 'usleep' was not declared in this scope
   usleep ( 10 );
   ^~~~~~
multi_threads.cpp:115:3: note: suggested alternative: 'fseek'
   usleep ( 10 );
   ^~~~~~
   fseek
Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc multi_threads.cpp
build_preArc.cpp: In function 'void build_preArc_threaded(preArc_array*, vertex_hash2*, int, int, std::vector<std::__cxx11::basic_string<char> >*, int)':
build_preArc.cpp:1071:28: error: 'usleep' was not declared in this scope
   while ( io_ready == 0 ) {usleep ( 1 );}
                            ^~~~~~
build_preArc.cpp:1071:28: note: suggested alternative: 'beep'
   while ( io_ready == 0 ) {usleep ( 1 );}
                            ^~~~~~
                            beep
Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc build_preArc.cpp
pregraph_sparse.cpp: In function 'int call_pregraph_sparse(int, char**)':
pregraph_sparse.cpp:171:31: error: 'usleep' was not declared in this scope
      while ( io_ready == 0 ) {usleep ( 1 );}
                               ^~~~~~
pregraph_sparse.cpp:171:31: note: suggested alternative: 'fseek'
      while ( io_ready == 0 ) {usleep ( 1 );}
                               ^~~~~~
                               fseek
pregraph_sparse.cpp:284:31: error: 'usleep' was not declared in this scope
      while ( io_ready == 0 ) {usleep ( 1 );}
                               ^~~~~~
pregraph_sparse.cpp:284:31: note: suggested alternative: 'fseek'
      while ( io_ready == 0 ) {usleep ( 1 );}
                               ^~~~~~
                               fseek
pregraph_sparse.cpp: In function 'void initenv(int, char**)':
pregraph_sparse.cpp:504:2: error: 'optind' was not declared in this scope
  optind = 1;
  ^~~~~~
pregraph_sparse.cpp:504:2: note: suggested alternative: 'optarg'
  optind = 1;
  ^~~~~~
  optarg
pregraph_sparse.cpp:507:19: error: 'getopt' was not declared in this scope
  while ( ( copt = getopt ( argc, argv, "s:o:K:g:z:d:e:p:m:r:R" ) ) != EOF )
                   ^~~~~~
pregraph_sparse.cpp:507:19: note: suggested alternative: 'getpt'
  while ( ( copt = getopt ( argc, argv, "s:o:K:g:z:d:e:p:m:r:R" ) ) != EOF )
                   ^~~~~~
                   getpt
Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc pregraph_sparse.cpp
make[1]: Leaving directory '/panhome/bguinet/TOOLS/SOAPdenovo2-src-r240/sparsePregraph'
make[1]: Entering directory '/panhome/bguinet/TOOLS/SOAPdenovo2-src-r240/standardPregraph'
SOAPdenovo-63mer cleaning done.
contig.c: In function 'call_heavygraph':
contig.c:78:2: warning: implicit declaration of function 'swapedge'; did you mean 'loadEdge'? [-Wimplicit-function-declaration]
  swapedge();
  ^~~~~~~~
  loadEdge
contig.c:79:2: warning: implicit declaration of function 'sortedge'; did you mean 'loadEdge'? [-Wimplicit-function-declaration]
  sortedge();
  ^~~~~~~~
  loadEdge
contig.c:80:2: warning: implicit declaration of function 'freshArc' [-Wimplicit-function-declaration]
  freshArc();
  ^~~~~~~~
contig.c:144:3: warning: implicit declaration of function 'Iterate' [-Wimplicit-function-declaration]
   Iterate ( shortrdsfile, graphfile, maxk, M ); //keepReadFile,
   ^~~~~~~
contig.c:154:3: warning: implicit declaration of function 'freshpreGraphBasic' [-Wimplicit-function-declaration]
   freshpreGraphBasic ( iter, maxk, graphfile );
   ^~~~~~~~~~~~~~~~~~
cutTipPreGraph.c: In function 'clipTipFromNode':
cutTipPreGraph.c:127:3: warning: implicit declaration of function 'PrintKmer'; did you mean 'print_kmer'? [-Wimplicit-function-declaration]
   PrintKmer ( stderr, word );
   ^~~~~~~~~
   print_kmer
hashFunction.c: In function 'crc32cHardware64':
hashFunction.c:111:9: warning: implicit declaration of function '__builtin_ia32_crc32di'; did you mean '__builtin_ia32_bsrdi'? [-Wimplicit-function-declaration]
   crc = __builtin_ia32_crc32di ( crc, * ( uint64_t * ) data );
         ^~~~~~~~~~~~~~~~~~~~~~
         __builtin_ia32_bsrdi
loadPreGraph.c: In function 'kmer2vt':
loadPreGraph.c:222:4: warning: implicit declaration of function 'PrintKmer'; did you mean 'print_kmer'? [-Wimplicit-function-declaration]
    PrintKmer ( stderr, kmer );
    ^~~~~~~~~
    print_kmer
localAsm.c: In function 'traceAlongDBgraph':
localAsm.c:657:3: warning: implicit declaration of function 'PrintKmer'; did you mean 'print_kmer'? [-Wimplicit-function-declaration]
   PrintKmer ( stderr, word );
   ^~~~~~~~~
   print_kmer
node2edge.c: In function 'merge_linearV2':
node2edge.c:505:5: warning: implicit declaration of function 'PrintKmer'; did you mean 'print_kmer'? [-Wimplicit-function-declaration]
     PrintKmer ( stderr, wordplus );
     ^~~~~~~~~
     print_kmer
orderContig.c: In function 'score_pass':
orderContig.c:2411:15: warning: implicit declaration of function 'allConnect'; did you mean 'validConnect'? [-Wimplicit-function-declaration]
  int outnum = allConnect ( id, NULL );
               ^~~~~~~~~~
               validConnect
output_pregraph.c: In function 'output_1edge':
output_pregraph.c:92:2: warning: implicit declaration of function 'print_kmer_gz'; did you mean 'print_kmer'? [-Wimplicit-function-declaration]
  print_kmer_gz ( fp, edge->from_node, ',' );
  ^~~~~~~~~~~~~
  print_kmer
prlRead2path.c: In function 'searchKmer':
prlRead2path.c:356:3: warning: implicit declaration of function 'PrintKmer'; did you mean 'print_kmer'? [-Wimplicit-function-declaration]
   PrintKmer ( stderr, kmerBuffer[t] );
   ^~~~~~~~~
   print_kmer
scaffold.c: In function 'call_scaffold':
scaffold.c:90:2: warning: implicit declaration of function 'ScafStat' [-Wimplicit-function-declaration]
  ScafStat ( 100, graphfile );
  ^~~~~~~~
cutTip_graph2.c: In function 'removeLowCovEdges2':
cutTip_graph2.c:231:2: warning: implicit declaration of function 'linearConcatenate2'; did you mean 'linearConcatenate'? [-Wimplicit-function-declaration]
  linearConcatenate2 ( last );
  ^~~~~~~~~~~~~~~~~~
  linearConcatenate
read2edge.c: In function 'Read2edge':
read2edge.c:960:19: warning: implicit declaration of function 'read1seqInLibpos'; did you mean 'read1seqInLib'? [-Wimplicit-function-declaration]
  while ( ( flag = read1seqInLibpos ( seqBuffer[read_c], next_name, & ( lenBuffer[read_c] ), //file,
                   ^~~~~~~~~~~~~~~~
                   read1seqInLib
iterate.c: In function 'update1Edge':
iterate.c:406:3: warning: implicit declaration of function 'destroyEdge2'; did you mean 'destroyArcMem'? [-Wimplicit-function-declaration]
   destroyEdge2 ( index );
   ^~~~~~~~~~~~
   destroyArcMem
iterate.c: In function 'addArc':
iterate.c:780:3: warning: implicit declaration of function 'Read2edge2'; did you mean 'prlRead2edge'? [-Wimplicit-function-declaration]
   Read2edge2 ( libfile, graph, last, maxk ); //, keepReadFile
   ^~~~~~~~~~
   prlRead2edge
iterate.c:783:5: warning: implicit declaration of function 'Read2edge'; did you mean 'prlRead2edge'? [-Wimplicit-function-declaration]
   { Read2edge ( libfile, graph, maxk ); }
     ^~~~~~~~~
     prlRead2edge
iterate.c:795:2: warning: implicit declaration of function 'removeDeadArcs2'; did you mean 'removeDeadArcs'? [-Wimplicit-function-declaration]
  removeDeadArcs2();
  ^~~~~~~~~~~~~~~
  removeDeadArcs
iterate.c: In function 'checkindegree':
iterate.c:1169:3: warning: implicit declaration of function 'arcCount2'; did you mean 'arcCount'? [-Wimplicit-function-declaration]
   arcCount2 ( from_ed, &arcRight_n );
   ^~~~~~~~~
   arcCount
iterate.c: In function 'swapedge':
iterate.c:1653:5: warning: implicit declaration of function 'copyEdge'; did you mean 'copy1Edge'? [-Wimplicit-function-declaration]
     copyEdge ( i, num_ed + 1 + 1 );
     ^~~~~~~~
     copy1Edge
iterate.c: In function 'Iterate':
iterate.c:2566:4: warning: implicit declaration of function 'removeWeakEdges2'; did you mean 'removeWeakEdges'? [-Wimplicit-function-declaration]
    removeWeakEdges2 ( cutlen, 1, mink );
    ^~~~~~~~~~~~~~~~
    removeWeakEdges
iterate.c:2567:4: warning: implicit declaration of function 'removeLowCovEdges2'; did you mean 'removeLowCovEdges'? [-Wimplicit-function-declaration]
    removeLowCovEdges2 ( cutlen, deLowEdge, mink, 0 );
    ^~~~~~~~~~~~~~~~~~
    removeLowCovEdges
iterate.c:2576:4: warning: implicit declaration of function 'cutTipsInGraph2'; did you mean 'cutTipsInGraph'? [-Wimplicit-function-declaration]
    cutTipsInGraph2 ( cutlen, 0, 0 );
    ^~~~~~~~~~~~~~~
    cutTipsInGraph
make[1]: Leaving directory '/panhome/bguinet/TOOLS/SOAPdenovo2-src-r240/standardPregraph'
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(bam.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(bam_import.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(sam.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(bam_pileup.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(faidx.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(knetfile.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(sam_header.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(bgzf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(kstring.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(bam_aux.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/X11/ld: ./sparsePregraph/inc/libbam.a(razf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
standardPregraph/main.o: In function `main':
main.c:(.text.startup+0xee): undefined reference to `call_pregraph_sparse'
/usr/bin/X11/ld: final link failed: Symbol needs debug section which does not exist
collect2: error: ld returned 1 exit status
Makefile:65: recipe for target 'SOAPdenovo-63mer' failed
make: *** [SOAPdenovo-63mer] Error 1

Do you any idea why it does not work?

Thank you.

aio_return error

Hello,
I am running SOAPdn2 on a server and the log file contains the line "aio_return error" some millions of times. The log file is now of 796 GB, mostly these error lines. Above that, the lines are:

Version 2.04: released on July 13th, 2012
Compile Sep 16 2016     15:43:38
********************
Pregraph
********************
Parameters: pregraph -s bart_cfg_file -K 53 -p 20 -R -o bart_53 
In bart_cfg_file, 1 lib(s), maximum read length 120, maximum name length 256.
20 thread(s) initialized.
Import reads from file:
 /wing2/users/dcopetti/OGE_genomes_reads/new_datasets/bart_frag_SRR1528330_1.fastq
Import reads from file:
 /wing2/users/dcopetti/OGE_genomes_reads/new_datasets/bart_frag_SRR1528330_2.fastq
--- 100000000th reads.
--- 200000000th reads.
--- 300000000th reads.
--- 400000000th reads.

The server is using all the processors I requested and ~200 Gb of memory, I don't know if it is progressing. It is running like this since about 24 h, for a 400 Mb homozygous genome with some 50-60x of PE data.
The command is SOAPdenovo-63mer all -s bart_cfg_file -p 20 -F -K 53 -R -o bart_53 1>bart_53_ass.log 2>bart_53_ass.err, the cfg file is

max_rd_len=120
[LIB]
#average insert size
avg_ins=400
#if sequence needs to be reversed
reverse_seq=0
asm_flags=3
rd_len_cutoff=120
rank=1
insert size)
pair_num_cutoff=3
least 32 for short insert size)
map_len=32
q1=/1.fastq
q2=/2.fastq

Is it all OK or is there something wrong?
Thanks,
Dario

GapCloser development

Hi,
nice peace of software :-)

Will there be some further development of GapCloser?
The current version (1.12.r6) is dated back to 2013-01-28.

Or is there a successor and/or alternative of/to GapCloser?

best,
Sven

for SOAPdenovo-fusion

if I have a single reads. so, its means that i only use for MEGAHIT, cant use SOAPdenovo-fusion and SOAPdenovo for map and scaff ?

segmentation fault when running SOAPdenovo2 with low k-mer size and sparse pregraph

I am trying to assemble an Illumina Miseq metagenome (read-length ~250bp) using SOAPdenovo 2 using the "sparse pregraph" option.
This seems to work fine when using a k-mersize of 101, but when I try to run it with K=21 or K=51 it keeps aborting with an segmetation fault ("Command terminated by signal 11").
I tried using both, the 63mer and the 127mer versions of the supplied binaries, but I get the same result with both.

here is the command I used (I used "/usr/bin/time -v" to get basic RAM and CPU-sudage info):
/usr/bin/time -v SOAPdenovo-127mer sparse_pregraph -z 5000000000 -o ass_trim105_merged_k21 -p 4 -s soap2.config -K 21 -d 1 -R

here is the error output:

Parameters: pregraph_sparse -s soap2.config -K 21 -g 15 -z 5000000000 -d 1 -e 1 -R  -r 0 -p 4 -o ass_trim105_merged_k21

Start to build the sparse de Brujin graph, round: 1
1 io thread initialized.
Import reads from file:
 ../../../../merging/151117_trim105//MFS25ng/out.notCombined_1.fastq.gz
4 work threads initialized.
Import reads from file:
 ../../../../merging/151117_trim105//MFS25ng/out.notCombined_2.fastq.gz
Import reads from file:
 ../../../../merging/151117_trim105//MFS25ng/out.extendedFrags.fastq.gz
Command terminated by signal 11
    Command being timed: "/home/jov14/tools/SOAPdenovo2-bin-LINUX-generic-r240/SOAPdenovo-127mer sparse_pregraph -z 5000000000 -o ass_trim105_merged_k21 -p 4 -s soap2.config -K 21 -d 1 -R"
    User time (seconds): 150.83
    System time (seconds): 24.50
    Percent of CPU this job got: 241%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 1:12.63
    Average shared text size (kbytes): 0
    Average unshared data size (kbytes): 0
    Average stack size (kbytes): 0
    Average total size (kbytes): 0
    Maximum resident set size (kbytes): 6717512
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 0
    Minor (reclaiming a frame) page faults: 1210198
    Voluntary context switches: 222300
    Involuntary context switches: 6058
    Swaps: 0
    File system inputs: 0
    File system outputs: 13433984
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 0

Do you have any suggestions on what might be wrong here?

SOAPdenovo-fusion (command not found...)

Hi, I'm trying to use 'SOAPdenovo-fusion'.
Then I compile it using make on SOAPdenovo2-r241.
Other tools are working good: SOAPdenovo-63mer & SOAPdenovo-127mer
But, I couldn't use 'SOAPdenovo-fusion' and only got,

'bash: SOAPdenovo-fusion: command not found...' message.

I got the same error message after compiling with 'make debug=1'.
Can you please help me to solve this out?

Scaff step crashes because of long gzip command

Hello,

Just wanted to report an issue we are seeing. We are using soap to assemble a plant genome. When the scaff step begins we get:

********************
Scaff
********************

Parameters: scaff -g lithmul -F scaff: invalid option -- 'K'
-m

Files for scaffold construction are OK.

There are 1 grad(s), 629927998 read(s), max read len 150.
Kmer size: 117
There are 13429809 edge(s) in edge file.
Mask contigs with coverage lower than 2.2 or higher than 44.0, and strict length 0.
Average contig coverage is 22, 3187804 contig(s) masked.
Mask contigs shorter than 119, 524656 contig(s) masked.
17899968 arc(s) loaded, average weight is 10.
6714905 contig(s) loaded.
Done loading updated edges.
Time spent on loading updated edges: 60s.

*****************************************************
Start to load paired-end reads information.

Cannot open lithmul.readOnContig. Now exit to system...

We are running the steps like this:

cd ${rundir}

label=lithmul

${exedir}/SOAPdenovo-127mer sparse_pregraph -s ${rundir}/lithmul.config -K 117 -z 1700000000 -p 23 -o ${label}
${exedir}/SOAPdenovo-127mer contig -g ${label} -R -p 23 -K 117 -z 1700000000
${exedir}/SOAPdenovo-127mer map -s ${rundir}/lithmul.config -g ${label} -p 23 -K 117
${exedir}/SOAPdenovo-127mer scaff  -g ${label} -F -K 117 -z 1700000000

Seems like the gunzip command takes too long to finish leading to soap not being able to find the file it needs. I have uncompressed in advance and seems to work as expected except for a warning that it could not decompress the file.

Thanks for a great tool!

"make install" is not available anymore

Dear colleagues, it seems that the "make install" option is not available anymore, so maybe it would be a good idea to update the installation instructions in the main README.md (it says 'Then install executable to ${destination folder}/SOAPdenovo-V2.04/bin using "make install"').

Thank you very much for this nice package.

Regards,

Hugo.

How to use SOAPdenovo-fusion scaffold the output of MEGAHIT?

Hi,
I'm using MEGAHIT for genome assembly of an insect (~800Mbp), and I found that the manual of SOAPdenovo2 mentioned that SOAPdenovo-fusion can be used to scaffold the contigs produced by MEGAHIT. But there are few documents about how to do it, such as how can I choose K-mer for SOAPdenovo-fusion?
Any suggestions or thoughts would be appreciated.

Best,
Yiwei Niu

Segmentation faul with scaff step after fusion and map

Hi
I get a segmentation fault no matter which flags I use for the scaff step. I used megahit to construct contigs, the fusion and map which gave no errors. However, running scaff complains about the .Arc file being empty and instantly crashes with segmentation fault.
Any help is much appreciated. I tried with and without -F.
Best regards
Astrid

finalFusion: not enough memory error (but enough is available)

I'm trying to use finalFusion to prepare some contigs for scaffolding. I can get everything to work fine on my local machine but I'm encountering problems when attempting this on a cluster (with Torque scheduler) with the same amount of available memory (12GB for a small test data file with only 327 sequences). BTW there's a typo in the error message ('enought').

finalFusion compiles with no problems. Here's the output from stdout:

/finalFusion -K 33 -D -c /input/output.fa -g /output/soap
Mapping & Scaffolding module.
[main]Data prepare mode selected .
not enought memory

Requested resources on the cluster are as follows:
Resources: mem=12000mb,neednodes=1:ppn=2:intel,nodes=1:ppn=2:intel,vmem=12000mb,walltime=00:30:00
Resources used on the cluster are as follows:
ResourcesUsed: cput=00:00:00,energy_used=0,mem=0kb,vmem=0kb,walltime=00:00:17

Output from free -m and vmstat -s immediately prior to execution are as follows:

free -m
             total       used       free     shared    buffers     cached
Mem:        120984      94769      26214          0        106      86892
-/+ buffers/cache:       7770     113213
Swap:            0          0          0
vmstat -s
    123888000  total memory
     97044368  used memory
     64228880  active memory
     31563736  inactive memory
     26843632  free memory
       109368  buffer memory
     88977984  swap cache
            0  total swap
            0  used swap
            0  free swap
   9208005092 non-nice user cpu ticks
         8779 nice user cpu ticks
    367979891 system cpu ticks
   4830637734 idle cpu ticks
     21968833 IO-wait cpu ticks
        37217 IRQ cpu ticks
      5125532 softirq cpu ticks
       669352 stolen cpu ticks
     91741034 pages paged in
   1724763415 pages paged out
            0 pages swapped in
            0 pages swapped out
   2558299138 interrupts
   2576345523 CPU context switches
   1481842300 boot time
     79999921 forks

Any ideas? I'm a bit stumped.

Config file

Hi

I am trying to use multiple illumina reads to assemble a cactus genome but I think I m not doing the confing file properly since it seem that Soap is only using the first pair of reads. Can you help me?
#maximal read length
max_rd_len=150
[LIB]
#average insert size of the library
avg_ins=350
#if sequences are forward-reverse of reverse-forward
reverse_seq=0
#in which part(s) the reads are used (only contigs, only scaffolds, both contigs and scaffolds, only gap closure)
asm_flags=3
#cut the reads to the given length
rd_len_cutoff=100
#in which order the reads are used while scaffolding
rank=1

cutoff of pair number for a reliable connection (at least 3 for short insert size)

pair_num_cutoff=3
#minimum aligned length to contigs for a reliable read location (at least 32 for short insert size)
map_len=32
#Pair1
q1=/users-d1/shinojosa/Mammillaria_Illumina/Mammilaria/Mammillaria_03_R1.fastq.gz
q2=/users-d1/shinojosa/Mammillaria_Illumina/Mammilaria/Mammillaria_03_R2.fastq.gz
#Pair2
q1=/users-d1/shinojosa/Mammillaria_Illumina/Mammilaria/Mammillaria_04_R1.fastq.gz
q2=/users-d1/shinojosa/Mammillaria_Illumina/Mammilaria/Mammillaria_04_R2.fastq.gz
#Pair3
q1=/users-d1/shinojosa/Mammillaria_Illumina/Mammilaria/Mammillaria_05_R1.fastq.gz
q2=/users-d1/shinojosa/Mammillaria_Illumina/Mammilaria/Mammillaria_05_R2.fastq.gz

Error during compilation

I receive the following error when compiling SOAPdenovo2:

~/git/SOAPdenovo2 $ make

pregraph_sparse_63mer.v1.0.3 cleaning done.                         
pregraph_sparse_63mer.v1.0.3 objects generated.                    
SOAPdenovo-63mer cleaning done.                              
SOAPdenovo-63mer objects generated.                                
sparsePregraph/io_func.o: In function `read1seqbam(char*, char*, int, samfile_t*, int*) [clone .constprop.58]':
io_func.cpp:(.text+0x47): undefined reference to `samread'
io_func.cpp:(.text+0xe2): undefined reference to `bam_format1_core'
sparsePregraph/io_func.o: In function `read1seqbam(char*, char*, int, samfile_t*, int*)':
io_func.cpp:(.text+0x62a): undefined reference to `samread'
io_func.cpp:(.text+0x6ca): undefined reference to `bam_format1_core'
standardPregraph/readseq1by1.o: In function `read1seqbam':
readseq1by1.c:(.text+0xaa7): undefined reference to `samread'
readseq1by1.c:(.text+0xacc): undefined reference to `bam_format1_core'
/lib64/libbam.a(sam.o): In function `samthreads':
(.text+0x11): undefined reference to `hts_get_format'
(.text+0x2c): undefined reference to `bgzf_mt'
/lib64/libbam.a(sam.o): In function `samopen':
(.text+0x62): undefined reference to `hts_open'
(.text+0xb8): undefined reference to `hts_set_fai_filename'
(.text+0xc9): undefined reference to `sam_hdr_read'
(.text+0xe6): undefined reference to `hts_verbose'
(.text+0x12d): undefined reference to `hts_get_format'
(.text+0x15f): undefined reference to `sam_hdr_write'
(.text+0x169): undefined reference to `hts_verbose'
(.text+0x195): undefined reference to `hts_close'
(.text+0x1c5): undefined reference to `hts_close'
/lib64/libbam.a(sam.o): In function `samclose':
(.text+0x1ea): undefined reference to `bam_hdr_destroy'
(.text+0x1f3): undefined reference to `hts_close'
/lib64/libbam.a(sam.o): In function `samfetch':
(.text+0x23a): undefined reference to `bam_init1'
(.text+0x255): undefined reference to `sam_itr_queryi'
(.text+0x279): undefined reference to `hts_itr_next'
(.text+0x28a): undefined reference to `hts_itr_destroy'
(.text+0x293): undefined reference to `bam_destroy1'
/lib64/libbam.a(sam.o): In function `sampileup':
(.text+0x2d6): undefined reference to `bam_init1'
(.text+0x333): undefined reference to `sam_read1'
(.text+0x354): undefined reference to `bam_destroy1'
/lib64/libbam.a(sam.o): In function `samfaipath':
(.text+0x3ed): undefined reference to `hts_verbose'
(.text+0x3f9): undefined reference to `fai_build'
/lib64/libbam.a(bam_plbuf.o): In function `bam_plbuf_reset':
(.text+0x5): undefined reference to `bam_plp_reset'
/lib64/libbam.a(bam_plbuf.o): In function `bam_plbuf_init':
(.text+0x33): undefined reference to `bam_plp_init'
/lib64/libbam.a(bam_plbuf.o): In function `bam_plbuf_destroy':
(.text+0x59): undefined reference to `bam_plp_destroy'
/lib64/libbam.a(bam_plbuf.o): In function `bam_plbuf_push':
(.text+0x95): undefined reference to `bam_plp_push'
(.text+0xd4): undefined reference to `bam_plp_next'
collect2: error: ld returned 1 exit status
make: *** [Makefile:58: SOAPdenovo-63mer] Error 1

Edit 1:
Here is my compiler info:

~/git/SOAPdenovo2 $ make -v

GNU Make 4.2.1
Built for x86_64-unknown-linux-gnu

The header in SOAPdenovo output ?

Hi,

My output from the assembler is formatted like this

scaffold148 17.4
scaffold149 37.1

What is that second number ? Is it the coverage ? If yes I don't understand what it means in an assembly.

I mean the coverage is normally the number of time that a base is represented/sequenced. What does it mean in that case ??

glibc detected error on cluster

Hello,
I've got this error during the execution of SopaDenovo2 on the computer cluster

Version 2.04: released on July 13th, 2012
Compile Aug 18 2016 15:47:18
all: invalid option -- 'n'


Pregraph


Parameters: pregraph -s /export/home/aay2c/soapdenovo_assembly/soap.config.sh -K 61 -p 64 -d 2 -R -o Soap_only_Pe

In /export/home/aay2c/soapdenovo_assembly/soap.config.sh, 1 lib(s), maximum read length 150, maximum name length 256.

64 thread(s) initialized.
Import reads from file:
/export/home/aay2c/zootoca_quorum/quorum_corrected_1.fa
--- 100000000th reads.
--- 200000000th reads.
--- 300000000th reads.
Time spent on hashing reads: 2386s, 343108542 read(s) processed.
LIB(s) information:
[LIB] 0, avg_ins 300, reverse 0.
1624289639 node(s) allocated, 27102103123 kmer(s) in reads, 27102103123 kmer(s) processed.
*** glibc detected *** /export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer: double free or corruption (out): 0x0000000002238140 ***
======= Backtrace: =========
/lib64/libc.so.6[0x3aee675f4e]
/lib64/libc.so.6[0x3aee678cf0]
/export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer[0x4506d4]
/export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer[0x44e01e]
/export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer[0x436dc9]
/export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer[0x437c0e]
/lib64/libc.so.6(__libc_start_main+0xfd)[0x3aee61ed5d]
/export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer[0x4047d9]
======= Memory map: ========
00400000-0048d000 r-xp 00000000 00:14 13320720085852621861 /export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer
0068d000-0068e000 rw-p 0008d000 00:14 13320720085852621861 /export/home/aay2c/app/soapdenovo_source/SOAPdenovo-63mer
0068e000-0080e000 rw-p 00000000 00:00 0
02238000-0cbfd000 rw-p 00000000 00:00 0 [heap]
3aee200000-3aee220000 r-xp 00000000 09:01 262150 /lib64/ld-2.12.so
3aee41f000-3aee420000 r--p 0001f000 09:01 262150 /lib64/ld-2.12.so
3aee420000-3aee421000 rw-p 00020000 09:01 262150 /lib64/ld-2.12.so
3aee421000-3aee422000 rw-p 00000000 00:00 0
3aee600000-3aee78a000 r-xp 00000000 09:01 262151 /lib64/libc-2.12.so
3aee78a000-3aee98a000 ---p 0018a000 09:01 262151 /lib64/libc-2.12.so
3aee98a000-3aee98e000 r--p 0018a000 09:01 262151 /lib64/libc-2.12.so
3aee98e000-3aee98f000 rw-p 0018e000 09:01 262151 /lib64/libc-2.12.so
3aee98f000-3aee994000 rw-p 00000000 00:00 0
3aeea00000-3aeea83000 r-xp 00000000 09:01 262163 /lib64/libm-2.12.so
3aeea83000-3aeec82000 ---p 00083000 09:01 262163 /lib64/libm-2.12.so
3aeec82000-3aeec83000 r--p 00082000 09:01 262163 /lib64/libm-2.12.so
3aeec83000-3aeec84000 rw-p 00083000 09:01 262163 /lib64/libm-2.12.so
3aeee00000-3aeee17000 r-xp 00000000 09:01 262158 /lib64/libpthread-2.12.so
3aeee17000-3aef017000 ---p 00017000 09:01 262158 /lib64/libpthread-2.12.so
3aef017000-3aef018000 r--p 00017000 09:01 262158 /lib64/libpthread-2.12.so
3aef018000-3aef019000 rw-p 00018000 09:01 262158 /lib64/libpthread-2.12.so
3aef019000-3aef01d000 rw-p 00000000 00:00 0
3aef600000-3aef615000 r-xp 00000000 09:01 262172 /lib64/libz.so.1.2.3
3aef615000-3aef814000 ---p 00015000 09:01 262172 /lib64/libz.so.1.2.3
3aef814000-3aef815000 r--p 00014000 09:01 262172 /lib64/libz.so.1.2.3
3aef815000-3aef816000 rw-p 00015000 09:01 262172 /lib64/libz.so.1.2.3
3aefa00000-3aefa07000 r-xp 00000000 09:01 262166 /lib64/librt-2.12.so
3aefa07000-3aefc06000 ---p 00007000 09:01 262166 /lib64/librt-2.12.so
3aefc06000-3aefc07000 r--p 00006000 09:01 262166 /lib64/librt-2.12.so
3aefc07000-3aefc08000 rw-p 00007000 09:01 262166 /lib64/librt-2.12.so
3aefe00000-3aefe16000 r-xp 00000000 09:01 262182 /lib64/libgcc_s-4.4.7-20120601.so.1
3aefe16000-3af0015000 ---p 00016000 09:01 262182 /lib64/libgcc_s-4.4.7-20120601.so.1
3af0015000-3af0016000 rw-p 00015000 09:01 262182 /lib64/libgcc_s-4.4.7-20120601.so.1
3af0a00000-3af0ae8000 r-xp 00000000 09:01 3410130 /usr/lib64/libstdc++.so.6.0.13
3af0ae8000-3af0ce8000 ---p 000e8000 09:01 3410130 /usr/lib64/libstdc++.so.6.0.13
3af0ce8000-3af0cef000 r--p 000e8000 09:01 3410130 /usr/lib64/libstdc++.so.6.0.13
3af0cef000-3af0cf1000 rw-p 000ef000 09:01 3410130 /usr/lib64/libstdc++.so.6.0.13
3af0cf1000-3af0d06000 rw-p 00000000 00:00 0
7f03d8000000-7f03d8021000 rw-p 00000000 00:00 0
7f03d8021000-7f03dc000000 ---p 00000000 00:00 0
7f03de360000-7f03de361000 rw-p 00000000 00:00 0
7f03de361000-7f03de362000 ---p 00000000 00:00 0
7f03de362000-7f03de365000 rw-p 00000000 00:00 0
7f03de365000-7f03de366000 ---p 00000000 00:00 0
7f03de366000-7f03ded66000 rw-p 00000000 00:00 0
7f03ded66000-7f03ded67000 ---p 00000000 00:00 0
7f03ded67000-7f03df767000 rw-p 00000000 00:00 0
7f03df767000-7f03df768000 ---p 00000000 00:00 0
7f03df768000-7f03e0168000 rw-p 00000000 00:00 0
7f03e0168000-7f03e0169000 ---p 00000000 00:00 0
7f03e0169000-7f03e0b69000 rw-p 00000000 00:00 0
7f03e0b69000-7f03e0b6a000 ---p 00000000 00:00 0
7f03e0b6a000-7f03e156a000 rw-p 00000000 00:00 0
7f03e156a000-7f03e156b000 ---p 00000000 00:00 0
7f03e156b000-7f03e1f6b000 rw-p 00000000 00:00 0
7f03e1f6b000-7f03e1f6c000 ---p 00000000 00:00 0
7f03e1f6c000-7f03e296c000 rw-p 00000000 00:00 0
7f03e296c000-7f03e296d000 ---p 00000000 00:00 0
7f03e296d000-7f03e336d000 rw-p 00000000 00:00 0
7f03e336d000-7f03e336e000 ---p 00000000 00:00 0
7f03e336e000-7f03e3d6e000 rw-p 00000000 00:00 0
7f03e3d6e000-7f03e3d6f000 ---p 00000000 00:00 0
7f03e3d6f000-7f03e476f000 rw-p 00000000 00:00 0
7f03e476f000-7f03e4770000 ---p 00000000 00:00 0
7f03e4770000-7f03e5170000 rw-p 00000000 00:00 0
7f03e5170000-7f03e5171000 ---p 00000000 00:00 0
7f03e5171000-7f03e5b71000 rw-p 00000000 00:00 0
7f03e5b71000-7f03e5b72000 ---p 00000000 00:00 0
7f03e5b72000-7f03e6572000 rw-p 00000000 00:00 0
7f03e6572000-7f03e6573000 ---p 00000000 00:00 0
7f03e6573000-7f03e6f73000 rw-p 00000000 00:00 0
7f03e6f73000-7f03e6f74000 ---p 00000000 00:00 0
7f03e6f74000-7f03e7974000 rw-p 00000000 00:00 0
7f03e7974000-7f03e7975000 ---p 00000000 00:00 0
7f03e7975000-7f03e8375000 rw-p 00000000 00:00 0
7f03e8375000-7f03e8376000 ---p 00000000 00:00 0
7f03e8376000-7f03e8d76000 rw-p 00000000 00:00 0
7f03e8d76000-7f03e8d77000 ---p 00000000 00:00 0
7f03e8d77000-7f03e9777000 rw-p 00000000 00:00 0
7f03e9777000-7f03e9778000 ---p 00000000 00:00 0
7f03e9778000-7f03ea178000 rw-p 00000000 00:00 0
7f03ea178000-7f03ea179000 ---p 00000000 00:00 0
7f03ea179000-7f03eab79000 rw-p 00000000 00:00 0
7f03eab79000-7f03eab7a000 ---p 00000000 00:00 0
7f03eab7a000-7f03eb57a000 rw-p 00000000 00:00 0
7f03eb57a000-7f03eb57b000 ---p 00000000 00:00 0
7f03eb57b000-7f03ebf7b000 rw-p 00000000 00:00 0
7f03ebf7b000-7f03ebf7c000 ---p 00000000 00:00 0
7f03ebf7c000-7f03ec97c000 rw-p 00000000 00:00 0
7f03ec97c000-7f03ec97d000 ---p 00000000 00:00 0
7f03ec97d000-7f03ed37d000 rw-p 00000000 00:00 0
7f03ed37d000-7f03ed37e000 ---p 00000000 00:00 0
7f03ed37e000-7f03edd7e000 rw-p 00000000 00:00 0
7f03edd7e000-7f03edd7f000 ---p 00000000 00:00 0
7f03edd7f000-7f03ee77f000 rw-p 00000000 00:00 0
7f03ee77f000-7f03ee780000 ---p 00000000 00:00 0
7f03ee780000-7f03ef180000 rw-p 00000000 00:00 0
7f03ef180000-7f03ef181000 ---p 00000000 00:00 0
7f03ef181000-7f03efb81000 rw-p 00000000 00:00 0
7f03efb81000-7f03efb82000 ---p 00000000 00:00 0
7f03efb82000-7f03f0582000 rw-p 00000000 00:00 0
7f03f0582000-7f03f0583000 ---p 00000000 00:00 0
7f03f0583000-7f03f0f83000 rw-p 00000000 00:00 0
7f03f0f83000-7f03f0f84000 ---p 00000000 00:00 0
7f03f0f84000-7f03f1984000 rw-p 00000000 00:00 0
7f03f1984000-7f03f1985000 ---p 00000000 00:00 0
7f03f1985000-7f03f2385000 rw-p 00000000 00:00 0
7f03f2385000-7f03f2386000 ---p 00000000 00:00 0
7f03f2386000-7f03f2d86000 rw-p 00000000 00:00 0
7f03f2d86000-7f03f2d87000 ---p 00000000 00:00 0
7f03f2d87000-7f03f3787000 rw-p 00000000 00:00 0
7f03f3787000-7f03f3788000 ---p 00000000 00:00 0
7f03f3788000-7f03f4188000 rw-p 00000000 00:00 0
7f03f4188000-7f03f4189000 ---p 00000000 00:00 0
7f03f4189000-7f03f4b89000 rw-p 00000000 00:00 0
7f03f4b89000-7f03f4b8a000 ---p 00000000 00:00 0
7f03f4b8a000-7f03f558a000 rw-p 00000000 00:00 0
7f03f558a000-7f03f558b000 ---p 00000000 00:00 0
7f03f558b000-7f03f5f8b000 rw-p 00000000 00:00 0
7f03f5f8b000-7f03f5f8c000 ---p 00000000 00:00 0
7f03f5f8c000-7f03f698c000 rw-p 00000000 00:00 0
7f03f698c000-7f03f698d000 ---p 00000000 00:00 0
7f03f698d000-7f03f738d000 rw-p 00000000 00:00 0
7f03f738d000-7f03f738e000 ---p 00000000 00:00 0
7f03f738e000-7f03f7d8e000 rw-p 00000000 00:00 0
7f03f7d8e000-7f03f7d8f000 ---p 00000000 00:00 0
7f03f7d8f000-7f03f878f000 rw-p 00000000 00:00 0
7f03f878f000-7f03f8790000 ---p 00000000 00:00 0
7f03f8790000-7f03f9190000 rw-p 00000000 00:00 0
7f03f9190000-7f03f9191000 ---p 00000000 00:00 0
7f03f9191000-7f03f9b91000 rw-p 00000000 00:00 0
7f03f9b91000-7f03f9b92000 ---p 00000000 00:00 0
7f03f9b92000-7f03fa592000 rw-p 00000000 00:00 0
7f03fa592000-7f03fa593000 ---p 00000000 00:00 0
7f03fa593000-7f03faf93000 rw-p 00000000 00:00 0
7f03faf93000-7f03faf94000 ---p 00000000 00:00 0
7f03faf94000-7f03fb994000 rw-p 00000000 00:00 0
7f03fb994000-7f03fb995000 ---p 00000000 00:00 0
7f03fb995000-7f03fc395000 rw-p 00000000 00:00 0
7f03fc395000-7f03fc396000 ---p 00000000 00:00 0
7f03fc396000-7f03fcd96000 rw-p 00000000 00:00 0
7f03fcd96000-7f03fcd97000 ---p 00000000 00:00 0
7f03fcd97000-7f03fd797000 rw-p 00000000 00:00 0
7f03fd797000-7f03fd798000 ---p 00000000 00:00 0
7f03fd798000-7f03fe198000 rw-p 00000000 00:00 0
7f03fe198000-7f03fe199000 ---p 00000000 00:00 0
7f03fe199000-7f03feb99000 rw-p 00000000 00:00 0
7f03feb99000-7f03feb9a000 ---p 00000000 00:00 0
7f03feb9a000-7f03ff59a000 rw-p 00000000 00:00 0
7f03ff59a000-7f03ff59b000 ---p 00000000 00:00 0
7f03ff59b000-7f03fff9b000 rw-p 00000000 00:00 0
7f03fff9b000-7f03fff9c000 ---p 00000000 00:00 0
7f03fff9c000-7f040099c000 rw-p 00000000 00:00 0
7f040099c000-7f040099d000 ---p 00000000 00:00 0
7f040099d000-7f040139d000 rw-p 00000000 00:00 0
7f040139d000-7f040139e000 ---p 00000000 00:00 0
7f040139e000-7f0401d9e000 rw-p 00000000 00:00 0
7f0401d9e000-7f0401d9f000 ---p 00000000 00:00 0
7f0401d9f000-7f040279f000 rw-p 00000000 00:00 0
7f040279f000-7f04027a0000 ---p 00000000 00:00 0
7f04027a0000-7f04031a0000 rw-p 00000000 00:00 0
7f04031a0000-7f04031a1000 ---p 00000000 00:00 0
7f04031a1000-7f0403ba1000 rw-p 00000000 00:00 0
7f0403ba1000-7f0403ba2000 ---p 00000000 00:00 0
7f0403ba2000-7f04045a2000 rw-p 00000000 00:00 0
7f04045a2000-7f04045a3000 ---p 00000000 00:00 0
7f04045a3000-7f0404fa3000 rw-p 00000000 00:00 0
7f0404fa3000-7f0404fa4000 ---p 00000000 00:00 0
7f0404fa4000-7f04059a4000 rw-p 00000000 00:00 0
7f04059a4000-7f04059a5000 ---p 00000000 00:00 0
7f04059a5000-7f10c24b3000 rw-p 00000000 00:00 0
7f10c24d0000-7f10c24d1000 rw-p 00000000 00:00 0
7ffe3ea74000-7ffe3ea89000 rw-p 00000000 00:00 0 [stack]
7ffe3eba3000-7ffe3eba4000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
/var/spool/torque/mom_priv/jobs/313089.headnode03.cent.gla.ac.uk.SC: line 6: 23720 Aborted

standard pregraph bug when using large number of threads

I'm triggering an error (in cutTipPreGraph.c line 124).

Start to remove frequency-one-kmer tips shorter than 82.
Kmer 0 0 2d199 b575fb763403b451 is not found, node1 0 0 34666 d5d7edd8d00ed145 .

The bug occurs when in the standard pregraph step with -p 30, but does not occur when I use -p 8... So it feels like a mutex (or lack thereof) bug in one of the data-structures.

The assembly I'm attempting is a simple test. The single library I'm using only covers the ~270 Mbase genome to a median depth of about 25, which might be relevant.

I don't have a minimal test-case I can send, though I could give you access to the input files (~13.5GB) if needed.

Full stderr output:

Version 2.04: released on July 13th, 2012
Compile Sep 25 2015     11:07:28

********************
Pregraph
********************

Parameters: pregraph -s test.cfg -K 41 -p 30 -R -o test_K41 

In test.cfg, 1 lib(s), maximum read length 600, maximum name length 256.

30 thread(s) initialized.
Import reads from file:
 /data/archive/YL-GF-02/trimmed/2011WAN043/trim_pe1.fastq.gz
Import reads from file:
 /data/archive/YL-GF-02/trimmed/2011WAN043/trim_pe2.fastq.gz
Import reads from file:
 /data/archive/YL-GF-02/trimmed/2011WAN043/trim_sing1.fastq.gz
Import reads from file:
 /data/archive/YL-GF-02/trimmed/2011WAN043/trim_sing2.fastq.gz
Time spent on hashing reads: 676s, 89689873 read(s) processed.
LIB(s) information:
 [LIB] 0, avg_ins 317, reverse 0.
854464360 node(s) allocated, 5137311711 kmer(s) in reads, 5137311711 kmer(s) processed.
done hashing nodes
828819958 linear node(s) marked.
Time spent on marking linear nodes: 15s.
Time spent on pre-graph construction: 691s.

Start to remove frequency-one-kmer tips shorter than 82.
Kmer 0 0 2d199 b575fb763403b451 is not found, node1 0 0 34666 d5d7edd8d00ed145 .

Segmentation fault with scaff step when use different MEGAHIT's output

Hi,
I used MEGAHIT to assemble reads into contigs, and then used SOAPdenovo-fusion, SOAPdenovo-127mer map, and SOAPdenovo-127mer scaff to scaffold the contigs. But when I removed one library in the MEGAHIT step, I got segmentation fault with scaff step.

Case 1: Code I used all libraries:

/software/megahit_v1.1.1_LINUX_CPUONLY_x86_64-bin/megahit -t 38 --no-mercy -1 270B_R_1P.fastq,500B_R_1P.fastq,800B_R_1P.fastq,3k_1_R_1P.fastq,5k-1_R_1P.fastq,5k-2_R_1P.fastq,10k_R_1P.fastq -2 270B_R_2P.fastq,500B_R_2P.fastq,800B_R_2P.fastq,3k_1_R_2P.fastq,5k-1_R_2P.fastq,5k-2_R_2P.fastq,10k_R_2P.fastq

/software/SOAPdenovo2-r241/SOAPdenovo-fusion -D -s config -p 40 -K 63 -g k63 -c ../megahit_out/final.contigs.fa
/software/SOAPdenovo2-r241/SOAPdenovo-127mer map -s config -p 40 -g k63
/software/SOAPdenovo2-r241/SOAPdenovo-127mer scaff -p 40 -g k63

Case 2: Code I removed one library:

/software/megahit_v1.1.1_LINUX_CPUONLY_x86_64-bin/megahit -t 20 --no-mercy -1 500B_R_1P.fastq,800B_R_1P.fastq,3k_1_R_1P.fastq,5k-1_R_1P.fastq,5k-2_R_1P.fastq,10k_R_1P.fastq -2 500B_R_2P.fastq,800B_R_2P.fastq,3k_1_R_2P.fastq,5k-1_R_2P.fastq,5k-2_R_2P.fastq,10k_R_2P.fastq -o megahit_out.no270

/software/SOAPdenovo2-r241/SOAPdenovo-fusion -D -s config -p 40 -K 63 -g k63_1 -c ../megahit_out.no270/final.contigs.fa
/software/SOAPdenovo2-r241/SOAPdenovo-127mer map -s config -p 40 -g k63_1
/software/SOAPdenovo2-r241/SOAPdenovo-127mer scaff -p 40 -g k63_1

The configure file I used is the same:

#maximal read length
max_rd_len=151
[LIB]
avg_ins=500
reverse_seq=0
asm_flags=2
#in which order the reads are used while scaffolding
rank=1
# cutoff of pair number for a reliable connection (at least 3 for short insert size)
pair_num_cutoff=3
#minimum aligned length to contigs for a reliable read location (at least 32 for short insert size)
map_len=32
#a pair of fastq file, read 1 file should always be followed by read 2 file
q1=500B_R1.fastq
q2=500B_R2.fastq
[LIB]
#average insert size
avg_ins=800
#if sequence needs to be reversed
reverse_seq=0
#in which part(s) the reads are used
asm_flags=2
#in which order the reads are used while scaffolding
rank=3
# cutoff of pair number for a reliable connection (at least 3 for short insert size)
pair_num_cutoff=3
#minimum aligned length to contigs for a reliable read location (at least 32 for short insert size)
map_len=32
#a pair of fastq file, read 1 file should always be followed by read 2 file
q1=800B_R1.fastq
q2=800B_R2.fastq
[LIB]
avg_ins=3000
reverse_seq=1
asm_flags=2
rank=3
# cutoff of pair number for a reliable connection (at least 5 for large insert size)
pair_num_cutoff=4
#minimum aligned length to contigs for a reliable read location (at least 35 for large insert size)
map_len=35
q1=3k_1_R1.fastq
q2=3k_1_R2.fastq
[LIB]
avg_ins=5000
reverse_seq=1
asm_flags=2
rank=4
# cutoff of pair number for a reliable connection (at least 5 for large insert size)
pair_num_cutoff=5
#minimum aligned length to contigs for a reliable read location (at least 35 for large insert size)
map_len=35
q1=5k-1_R1.fastq
q2=5k-1_R2.fastq
[LIB]
avg_ins=5000
reverse_seq=1
asm_flags=2
rank=4
# cutoff of pair number for a reliable connection (at least 5 for large insert size)
pair_num_cutoff=5
#minimum aligned length to contigs for a reliable read location (at least 35 for large insert size)
map_len=35
q1=5k-2_R1.fastq
q2=5k-2_R2.fastq
[LIB]
avg_ins=10000
reverse_seq=1
asm_flags=2
rank=5
# cutoff of pair number for a reliable connection (at least 5 for large insert size)
pair_num_cutoff=5
#minimum aligned length to contigs for a reliable read location (at least 35 for large insert size)
map_len=35
q1=10k_R1.fastq
q2=10k_R2.fastq

The message I got when I removed one library:

All contigs loaded.
Mapping & Scaffolding module.
[main]Data prepare mode selected .

Version 2.04: released on July 13th, 2012
Compile Mar 19 2017	10:58:55

********************
Map
********************

Parameters: map -s config -p 40 -g k63_1 

Kmer size: 63.
Contig length cutoff: 65.

782765 contig(s), maximum sequence length 61533, minimum sequence length 200, maximum name length 10.
Time spent on parsing contigs file: 1s.
40 thread(s) initialized.
Time spent on hashing contigs: 43s.
546166365 node(s) allocated, 630731530 kmer(s) in contigs, 630731530 kmer(s) processed.
Time spent on graph construction: 44s.

Time spent on aligning long reads: 0s.

In file: config, max seq len 151, max name len 256
40 thread(s) initialized.
1565513 edge(s) in the graph.
Import reads from file:
 500B_R1.fastq
Import reads from file:
 500B_R2.fastq
Current insert size is 500, map_len is 32.
--- 100000000th reads.
Import reads from file:
 800B_R1.fastq
Import reads from file:
 800B_R2.fastq
Current insert size is 800, map_len is 32.
--- 200000000th reads.
Import reads from file:
 3k_1_R1.fastq
Import reads from file:
 3k_1_R2.fastq
Current insert size is 3000, map_len is 35.
--- 300000000th reads.
Import reads from file:
 5k-1_R1.fastq
Import reads from file:
 5k-1_R2.fastq
Current insert size is 5000, map_len is 35.
--- 400000000th reads.
--- 500000000th reads.
Import reads from file:
 5k-2_R1.fastq
Import reads from file:
 5k-2_R2.fastq
Current insert size is 5000, map_len is 35.
--- 600000000th reads.
Import reads from file:
 10k_R1.fastq
Import reads from file:
 10k_R2.fastq
Current insert size is 10000, map_len is 35.
--- 700000000th reads.

Total reads         776836032
Reads in gaps       183984010
Ratio               23.7%
Reads on contigs    420553855
Ratio               54.1%
6 pe insert size, the largest boundary is 776836032.

LIB(s) information:
 [LIB] 0, avg_ins 500, reverse 0.
 [LIB] 1, avg_ins 800, reverse 0.
 [LIB] 2, avg_ins 3000, reverse 1.
 [LIB] 3, avg_ins 5000, reverse 1.
 [LIB] 4, avg_ins 5000, reverse 1.
 [LIB] 5, avg_ins 10000, reverse 1.
Time spent on aligning reads: 6541s.

Overall time spent on alignment: 109m.


Version 2.04: released on July 13th, 2012
Compile Mar 19 2017	10:58:55

********************
Scaff
********************

Parameters: scaff -p 40 -g k63_1 

k63_1.Arc: no such file or empty file!

There are 6 grad(s), 776836032 read(s), max read len 151.
Kmer size: 63
There are 1565513 edge(s) in edge file.
Mask contigs with coverage lower than 0.3 or higher than 6.0, and strict length 0.
Average contig coverage is 3, 0 contig(s) masked.
Mask contigs shorter than 65, 0 contig(s) masked.
0 arc(s) loaded, average weight is 0.
/opt/gridview//pbs/dispatcher/mom_priv/jobs/23301.admin.SC: line 19: 72517 Segmentation fault (core dumped) /home/software/SOAPdenovo2-r241/SOAPdenovo-127mer scaff -p 40 -g k63_1               (core dumped) /home/software/SOAPdenovo2-r241/SOAPdenovo-127mer scaff -p 40 -g k63_1

I've also tried with or without '-F', and still got the error.

Best regards,
Yiwei Niu

segment fault when use staff -F option

Hello,

I got "Segmentation fault" when I run SOAPdenovo2-127mer scaff with -F option, but don't have the problem when run without '-F'. Could you fix the problem?

STDERR is:


Scaff


Parameters: scaff -g K127.d1.e0.M0.G100.b2.V.F -G 100 -b 2 -V -N 1500000000 -p 8 -F -S

Files for scaffold construction are OK.

There are 1 grad(s), 238087400 read(s), max read len 1000.
Kmer size: 127
There are 5997196 edge(s) in edge file.
Mask contigs with coverage lower than 1.0 or higher than 20.0, and strict length 0.
Average contig coverage is 10, 1351551 contig(s) masked.
Mask contigs shorter than 129, 1143042 contig(s) masked.
6685784 arc(s) loaded, average weight is 6.
2998621 contig(s) loaded.
Done loading updated edges.
Time spent on loading updated edges: 136s.

Start to load reads for gap filling. 100 length discrepancy is allowed.
...
Loaded 56747993 reads from K127.d1.e0.M0.G100.b2.V.F.readInGap.
8 thread(s) initialized.
1000 scaffolds processed.
2000 scaffolds processed.
3000 scaffolds processed.
4000 scaffolds processed.
5000 scaffolds processed.
6000 scaffolds processed.
7000 scaffolds processed.
8000 scaffolds processed.
9000 scaffolds processed.
10000 scaffolds processed.
/opt/gridengine/default/Federation/spool/execd/kcompute83/job_scripts/1118308: line 83:
8077 Segmentation fault (core dumped) ~/bin/SOAPdenovo-127mer scaff -g K127.d1.e0.
M0.G100.b2.V.F -G 100 -b 2 -V -N 1500000000 -p 8 -F -S

Thanks,
Zelin

Error reading FASTA files

Hi SOAPdenovo2 devs,
I have just noticed a strange issue. Whenever I input FASTA files (using the f1,f2 flags in the configuration file), the program just goes into a loop of trying to process the reads. I am using version 2.40 (installed from bioconda) and my command was:
SOAPdenovo-63mer all -s /vol/assembly/config_Lmig_PE90_20K_insert.txt -K 43 -R -p 16 -o PE90_20K_ins 1> assembly_PE90.log 2> assembly_PE90.error
and my log file looks like this:

Version 2.04: released on July 13th, 2012
Compile Jul 12 2016     07:31:42

********************
Pregraph
********************

Parameters: pregraph -s /vol/assembly/config_Lmig_PE90_20K_insert.txt -K 43 -p 16 -R -o PE90_20K_ins

In /vol/assembly/config_Lmig_PE90_20K_insert.txt, 1 lib(s), maximum read length 90, maximum name length 256.

16 thread(s) initialized.
Import reads from file:
 /vol/libs/SRR764591_1.fasta
Import reads from file:
 /vol/libs/SRR764591_2.fasta
--- 100000000th reads.
--- 200000000th reads.
--- 300000000th reads.
--- 400000000th reads.
--- 500000000th reads.
--- 600000000th reads.
--- 700000000th reads.
--- 800000000th reads.
--- 900000000th reads.
--- 1000000000th reads.
--- 1100000000th reads.

........


--- 612500000000th reads.
--- 612600000000th reads.
--- 612700000000th reads.
--- 612800000000th reads.
--- 612900000000th reads.
--- 613000000000th reads.
--- 613100000000th reads.
--- 613200000000th reads.
--- 613300000000th reads.
--- 613400000000th reads.
--- 613500000000th reads.
--- 613600000000th reads.
--- 613700000000th reads.
--- 613800000000th reads.

However, when I switch to FASTQ input files, the problem disappears.

Best Wishes,
Abhijeet

how to use multi-kmer option: setting kmer step size and minimum k-mer size

Hello,
Your publication states that SOAPdenovo2 implements a multi-kmer strategy similar to IBDA_UD and megahit. But how exactly can it be used?

The instructions state that the "-m" argument sets the maximum k-mer size. But how exactly are the minimum k-mer size and the step-size set?

Is the minimum k-mer size simply set with the "-K" argument? Are multi-kmers used automatically if both "-K" and "-m" are set?

The pseudocode in the supplemental data of the SOAPdenovo2-paper seems to indicate a hard-coded step size of 1. Is this true? Wouldn't that restrict the usage to very small k-mer ranges? Or can the step-size be customized?

thanks,
john

make error

This is using Ubuntu 14.04. Any hints as to how to get this to install properly?

make[1]: Entering directory `/share/SOAPdenovo2/sparsePregraph'
pregraph_sparse_63mer.v1.0.3 cleaning done.
build_graph.cpp: In function ‘void SavingSparseKmerGraph2(hashtable2*, char*)’:
build_graph.cpp:642:42: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( o_ht_idx, "%llu\n", ht->ht_sz );
                                          ^
build_graph.cpp:689:41: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
   fprintf ( o_ht_idx, "%llu\n", list_sz );
                                         ^
build_graph.cpp:694:49: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
   fprintf ( o_cov, "%d\t%llu\n", i, cov_hist[i] );
                                                 ^
In file included from build_edge.cpp:28:0:
./inc/sparse_kmer.h: In function ‘void printKmer(const kmer_t2*, FILE*)’:
./inc/sparse_kmer.h:304:72: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( fp, "%llx %llx ,\n", ( kmer->kmer ) [0], ( kmer->kmer ) [1] );
                                                                        ^
./inc/sparse_kmer.h:304:72: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
build_edge.cpp: In function ‘void RemovingWeakNodesAndEdges2(hashtable2*, int, int, int, size_t*, size_t*)’:
build_edge.cpp:233:63: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘int’ [-Wformat=]
  fprintf ( stderr, "%llu nodes removed.\n", Removed_Nodes_cnt );
                                                               ^
build_edge.cpp:234:63: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘int’ [-Wformat=]
  fprintf ( stderr, "%llu edges removed.\n", Removed_Edges_cnt );
                                                               ^
build_edge.cpp: In function ‘void removeMinorTips(hashtable2*, int, int, int&)’:
build_edge.cpp:283:68: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
    fprintf ( stderr, "%llu tips removed in cycle %d.\n\n", flag, j );
                                                                    ^
build_edge.cpp:288:58: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
    fprintf ( stderr, "Total %llu tips removed.\n", total );
                                                          ^
build_edge.cpp: In function ‘void mask1in1out(hashtable2*)’:
build_edge.cpp:338:56: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( stderr, "Total nodes number: %llu\n", total );
                                                        ^
build_edge.cpp:339:58: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( stderr, "Linear nodes number: %llu\n", linear );
                                                          ^
build_edge.cpp: In function ‘void pirntStack(std::list<stacked_node2*>&)’:
build_edge.cpp:1154:69: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
    { fprintf ( stderr, "%llx , %d ,", ptr->edge->edge, ptr->is_left ); }
                                                                     ^
build_edge.cpp: In function ‘void process_1stack(hashtable2*, int, std::list<stacked_node2*>&, FILE*, std::vector<preedge2>&)’:
build_edge.cpp:1190:69: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘std::list<stacked_node2*>::size_type {aka long unsigned int}’ [-Wformat=]
   fprintf ( stderr, "only %llu nodes in the stack \n", stack.size() );
                                                                     ^
build_edge.cpp: In function ‘void output_1edge(preEDGE2*, int, FILE*)’:
build_edge.cpp:1283:69: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘std::basic_string<char>::size_type {aka long unsigned int}’ [-Wformat=]
  fprintf ( fp, ">length %d,", long_edge->full_edge->size() - K_size );
                                                                     ^
build_edge.cpp:1293:47: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( fp, "%llx %llx,", from[0], from[1] );
                                               ^
build_edge.cpp:1293:47: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
build_edge.cpp:1294:43: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( fp, "%llx %llx,", to[0], to[1] );
                                           ^
build_edge.cpp:1294:43: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
multi_threads.cpp: In function ‘void* threadRoutine(void*)’:
multi_threads.cpp:93:14: error: ‘usleep’ was not declared in this scope
   usleep ( 1 );
              ^
multi_threads.cpp: In function ‘void sendWorkSignal(unsigned char, unsigned char*)’:
multi_threads.cpp:115:15: error: ‘usleep’ was not declared in this scope
   usleep ( 10 );
               ^
Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc multi_threads.cpp
In file included from build_preArc.cpp:46:0:
./inc/sparse_kmer.h: In function ‘void printKmer(const kmer_t2*, FILE*)’:
./inc/sparse_kmer.h:304:72: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( fp, "%llx %llx ,\n", ( kmer->kmer ) [0], ( kmer->kmer ) [1] );
                                                                        ^
./inc/sparse_kmer.h:304:72: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
build_preArc.cpp: In function ‘void build_vertexes(vertex_hash2*, int, char*)’:
build_preArc.cpp:127:132: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 4 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
             & ( from_kmer.kmer ) [0], & ( from_kmer.kmer ) [1], & ( to_kmer.kmer ) [0], & ( to_kmer.kmer ) [1], str, &cvg, &bal_ed ); // from_kmer to_kmer is of no use here
                                                                                                                                    ^
build_preArc.cpp:127:132: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 5 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
build_preArc.cpp:127:132: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 6 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
build_preArc.cpp:127:132: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 7 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
build_preArc.cpp:127:132: warning: format ‘%d’ expects argument of type ‘int*’, but argument 10 has type ‘bool*’ [-Wformat=]
build_preArc.cpp: In function ‘void output_preArcs(preArc_array*, char*)’:
build_preArc.cpp:637:26: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
    fprintf ( fp, "%u", i );
                          ^
build_preArc.cpp:649:28: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
      fprintf ( fp, "%u", i );
                            ^
build_preArc.cpp: In function ‘void process_1read_preArc(preArc_array*, pthread_spinlock_t*, int, vertex_hash2*, int, int, const char*)’:
build_preArc.cpp:785:93: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
        fprintf ( stderr, "ERROR: left edge id found already !new found id %llu \n", left_id );
                                                                                             ^
build_preArc.cpp:860:96: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
        fprintf ( stderr, "ERROR: right edge id found already, new found id %llu !\n", right_id );
                                                                                                ^
build_preArc.cpp: In function ‘void build_preArc_threaded(preArc_array*, vertex_hash2*, int, int, std::vector<std::basic_string<char> >*, int)’:
build_preArc.cpp:1071:39: error: ‘usleep’ was not declared in this scope
   while ( io_ready == 0 ) {usleep ( 1 );}
                                       ^
Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc build_preArc.cpp
pregraph_sparse.cpp: In function ‘int call_pregraph_sparse(int, char**)’:
pregraph_sparse.cpp:171:42: error: ‘usleep’ was not declared in this scope
      while ( io_ready == 0 ) {usleep ( 1 );}
                                          ^
pregraph_sparse.cpp:216:79: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
               difftime ( read_time, beg_time ), processed_reads, bucket_count );
                                                                               ^
pregraph_sparse.cpp:216:79: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 5 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
pregraph_sparse.cpp:284:42: error: ‘usleep’ was not declared in this scope
      while ( io_ready == 0 ) {usleep ( 1 );}
                                          ^
pregraph_sparse.cpp:317:143: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
     fprintf ( stderr, "Time spent on building graph round 2: %.fs, %llu reads processed\n", difftime ( read_time, beg_time ), processed_reads );
                                                                                                                                               ^
pregraph_sparse.cpp:318:100: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
     fprintf ( stderr, "%llu nodes allocated, %llu kmer-edges allocated.\n", bucket_count, edge_cnt );
                                                                                                    ^
pregraph_sparse.cpp:318:100: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
pregraph_sparse.cpp:342:73: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘time_t {aka long int}’ [-Wformat=]
   fprintf ( stderr, "Time spent on removing tips: %llus.\n\n", interval );
                                                                         ^
pregraph_sparse.cpp:355:78: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘time_t {aka long int}’ [-Wformat=]
   fprintf ( stderr, "Time spent on constructing edges: %llus.\n\n", interval );
                                                                              ^
pregraph_sparse.cpp:413:83: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘time_t {aka long int}’ [-Wformat=]
   fprintf ( stderr, "Time spent on building vertex indexes: %llus.\n\n", interval );
                                                                                   ^
pregraph_sparse.cpp:487:76: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘time_t {aka long int}’ [-Wformat=]
   fprintf ( stderr, "Time spent on building preArcs: %llus.\n\n", interval );
                                                                            ^
pregraph_sparse.cpp: In function ‘void initenv(int, char**)’:
pregraph_sparse.cpp:504:2: error: ‘optind’ was not declared in this scope
  optind = 1;
  ^
pregraph_sparse.cpp:507:64: error: ‘getopt’ was not declared in this scope
  while ( ( copt = getopt ( argc, argv, "s:o:K:g:z:d:e:p:m:r:R" ) ) != EOF )
                                                                ^
pregraph_sparse.cpp:529:41: warning: format ‘%Lu’ expects argument of type ‘long long unsigned int*’, but argument 3 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
     sscanf ( optarg, "%Lu", &GenomeSize );
                                         ^
Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc pregraph_sparse.cpp
In file included from convert_soapdenovo.cpp:28:0:
./inc/sparse_kmer.h: In function ‘void printKmer(const kmer_t2*, FILE*)’:
./inc/sparse_kmer.h:304:72: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( fp, "%llx %llx ,\n", ( kmer->kmer ) [0], ( kmer->kmer ) [1] );
                                                                        ^
./inc/sparse_kmer.h:304:72: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
convert_soapdenovo.cpp: In function ‘void convert(char*, int, char*)’:
convert_soapdenovo.cpp:304:127: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 4 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
             & ( from_kmer.kmer ) [0], & ( from_kmer.kmer ) [1], & ( to_kmer.kmer ) [0], & ( to_kmer.kmer ) [1], &cvg, &bal_ed ); // from_kmer to_kmer is of no use here
                                                                                                                               ^
convert_soapdenovo.cpp:304:127: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 5 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
convert_soapdenovo.cpp:304:127: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 6 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
convert_soapdenovo.cpp:304:127: warning: format ‘%llx’ expects argument of type ‘long long unsigned int*’, but argument 7 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
convert_soapdenovo.cpp:430:89: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
   fprintf ( fout2, "%llx %llx ", ( ( *it ).first.kmer ) [0], ( ( *it ).first.kmer ) [1] );
                                                                                         ^
convert_soapdenovo.cpp:430:89: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
convert_soapdenovo.cpp:442:96: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
  fprintf ( stderr, "%llu edges and %llu vertexes constructed.\n", edge_counter, vertex_counter );
                                                                                                ^
convert_soapdenovo.cpp:442:96: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
convert_soapdenovo.cpp:253:27: warning: ignoring return value of ‘char* fgets(char*, int, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
   fgets ( line, 1024, fp );
                           ^
convert_soapdenovo.cpp:254:27: warning: ignoring return value of ‘char* fgets(char*, int, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
   fgets ( line, 1024, fp );
                           ^
convert_soapdenovo.cpp:255:27: warning: ignoring return value of ‘char* fgets(char*, int, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
   fgets ( line, 1024, fp );
                           ^
make[1]: Leaving directory `/share/SOAPdenovo2/sparsePregraph'
make[1]: Entering directory `/share/SOAPdenovo2/standardPregraph'
SOAPdenovo-63mer cleaning done.
attachPEinfo.c: In function ‘connectByPE_grad’:
attachPEinfo.c:472:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long long int’ [-Wformat=]
  fprintf ( stderr, " Accumulated connections             %d\n", newCntCounter );
  ^
attachPEinfo.c: In function ‘connectByPE_grad_gz’:
attachPEinfo.c:583:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long long int’ [-Wformat=]
  fprintf ( stderr, " Accumulated connections             %d\n", newCntCounter );
  ^
attachPEinfo.c: In function ‘loadPEgrads’:
attachPEinfo.c:105:9: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
   fgets ( line, sizeof ( line ), fp );
         ^
loadPath.c: In function ‘loadPath’:
loadPath.c:91:10: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
   fscanf ( fp, "%d", &num1 );
          ^
loadPath.c:95:11: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
    fscanf ( fp, "%d", &num2 );
           ^
loadPath.c: In function ‘loadPathBin’:
loadPath.c:236:10: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
   fscanf ( fp, "%d", &num1 );
          ^
loadPath.c:240:11: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
    fscanf ( fp, "%d", &num2 );
           ^
loadPreGraph.c: In function ‘loadVertex’:
loadPreGraph.c:121:10: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
   fscanf ( fp, "%llx %llx", & ( word.high ), & ( word.low ) );
          ^
orderContig.c: In function ‘ScafStat’:
orderContig.c:3329:3: warning: unknown conversion type character 0xa in format [-Wformat=]
   fprintf ( fo, "Total_scaffold_length_as_percentage_of_known_genome_size\t%.2f%\n", 100 * ( 1.0 * Size_includeN / known_genome_size ) );
   ^
orderContig.c:3372:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "scaffolds>100 \t%ld\t%.2f%\n", n100 , 100 * ( 1.0 * n100 / Scaffold_Number ) );
  ^
orderContig.c:3373:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "scaffolds>500 \t%ld\t%.2f%\n", n500 , 100 * ( 1.0 * n500 / Scaffold_Number ) );
  ^
orderContig.c:3374:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "scaffolds>1K  \t%ld\t%.2f%\n", n1k   , 100 * ( 1.0 * n1k / Scaffold_Number ) );
  ^
orderContig.c:3375:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "scaffolds>10K \t%ld\t%.2f%\n", n10k , 100 * ( 1.0 * n10k / Scaffold_Number ) );
  ^
orderContig.c:3376:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "scaffolds>100K\t%ld\t%.2f%\n", n100k, 100 * ( 1.0 * n100k / Scaffold_Number ) );
  ^
orderContig.c:3377:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "scaffolds>1M  \t%ld\t%.2f%\n", n1m   , 100 * ( 1.0 * n1m / Scaffold_Number ) );
  ^
orderContig.c:3379:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_A\t%lld\t%.2f%\n", A_num_all, 100 * ( 1.0 * A_num_all / Size_includeN ) );
  ^
orderContig.c:3380:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_C\t%lld\t%.2f%\n", C_num_all, 100 * ( 1.0 * C_num_all / Size_includeN ) );
  ^
orderContig.c:3381:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_G\t%lld\t%.2f%\n", G_num_all, 100 * ( 1.0 * G_num_all / Size_includeN ) );
  ^
orderContig.c:3382:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_T\t%lld\t%.2f%\n", T_num_all, 100 * ( 1.0 * T_num_all / Size_includeN ) );
  ^
orderContig.c:3383:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "GapContent_N\t%lld\t%.2f%\n", N_num_all, 100 * ( 1.0 * N_num_all / Size_includeN ) );
  ^
orderContig.c:3384:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Non_ACGTN\t%lld\t%.2f%\n", Non_ACGTN_all, 100 * ( 1.0 * Non_ACGTN_all / Size_includeN ) );
  ^
orderContig.c:3385:2: warning: unknown conversion type character 0x9 in format [-Wformat=]
  fprintf ( fo, "GC_Content\t%.2f%\t\t(G+C)/(A+C+G+T)\n", 100 * ( 1.0 * ( G_num_all + C_num_all ) / ( A_num_all + C_num_all + G_num_all + T_num_all ) ) );
  ^
orderContig.c:3471:3: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=]
   fprintf ( fo, "N50_scaffold-NG50_scaffold_length_difference\t%ld\n", abs ( N50 - N50_known ) );
   ^
orderContig.c:3684:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Contig>100 \t%ld\t%.2f%\n", n100 , 100 * ( 1.0 * n100 / Scaffold_Number ) );
  ^
orderContig.c:3685:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Contig>500 \t%ld\t%.2f%\n", n500 , 100 * ( 1.0 * n500 / Scaffold_Number ) );
  ^
orderContig.c:3686:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Contig>1K  \t%ld\t%.2f%\n", n1k      , 100 * ( 1.0 * n1k / Scaffold_Number ) );
  ^
orderContig.c:3687:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Contig>10K \t%ld\t%.2f%\n", n10k , 100 * ( 1.0 * n10k / Scaffold_Number ) );
  ^
orderContig.c:3688:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Contig>100K\t%ld\t%.2f%\n", n100k, 100 * ( 1.0 * n100k / Scaffold_Number ) );
  ^
orderContig.c:3689:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Contig>1M  \t%ld\t%.2f%\n", n1m      , 100 * ( 1.0 * n1m / Scaffold_Number ) );
  ^
orderContig.c:3691:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_A\t%lld\t%.2f%\n", A_num_all, 100 * ( 1.0 * A_num_all / Size_includeN ) );
  ^
orderContig.c:3692:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_C\t%lld\t%.2f%\n", C_num_all, 100 * ( 1.0 * C_num_all / Size_includeN ) );
  ^
orderContig.c:3693:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_G\t%lld\t%.2f%\n", G_num_all, 100 * ( 1.0 * G_num_all / Size_includeN ) );
  ^
orderContig.c:3694:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Nucleotide_T\t%lld\t%.2f%\n", T_num_all, 100 * ( 1.0 * T_num_all / Size_includeN ) );
  ^
orderContig.c:3695:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "GapContent_N\t%lld\t%.2f%\n", N_num_all, 100 * ( 1.0 * N_num_all / Size_includeN ) );
  ^
orderContig.c:3696:2: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf ( fo, "Non_ACGTN\t%lld\t%.2f%\n", Non_ACGTN_all, 100 * ( 1.0 * Non_ACGTN_all / Size_includeN ) );
  ^
orderContig.c:3697:2: warning: unknown conversion type character 0x9 in format [-Wformat=]
  fprintf ( fo, "GC_Content\t%.2f%\t\t(G+C)/(A+C+G+T)\n", 100 * ( 1.0 * ( G_num_all + C_num_all ) / ( A_num_all + C_num_all + G_num_all + T_num_all ) ) );
  ^
orderContig.c:3783:3: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=]
   fprintf ( fo, "N50_contig-NG50_contig_length_difference\t%ld\n", abs ( N50 - N50_known ) );
   ^
orderContig.c: In function ‘scaffolding’:
orderContig.c:4467:3: warning: too many arguments for format [-Wformat-extra-args]
   fprintf ( fp, ">scaffold%d %d %d %d\n", count, score_count, len, num3 + num5, mask_num );
   ^
orderContig.c:4468:3: warning: too many arguments for format [-Wformat-extra-args]
   fprintf ( fo, ">scaffold%d %d %d %d\n", count, score_count, len, num3 + num5, mask_num );
   ^
orderContig.c:4732:2: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 3 has type ‘unsigned int’ [-Wformat=]
  fprintf ( stderr, " Longest scaffold                 %lld\n", length_array[count - 1] );
  ^
orderContig.c:4735:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long long int’ [-Wformat=]
  fprintf ( stderr, " Average length                   %d\n", total_len / count );
  ^
orderContig.c: In function ‘scaffold_count’:
orderContig.c:4996:2: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 3 has type ‘unsigned int’ [-Wformat=]
  fprintf ( stderr, " Longest scaffold                 %lld\n", length_array[count - 1] );
  ^
orderContig.c:4998:2: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 3 has type ‘long int’ [-Wformat=]
  fprintf ( stderr, " Scaffold and singleton length    %lld\n", total_len );
  ^
orderContig.c:4999:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long int’ [-Wformat=]
  fprintf ( stderr, " Average length                   %d\n", total_len / count );
  ^
orderContig.c: In function ‘ScafStat’:
orderContig.c:3250:10: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
    fgets ( buf, 4000, fp );
          ^
orderContig.c:3577:10: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
    fgets ( buf, 4000, fp2 );
          ^
orderContig.c: In function ‘PE2Links’:
orderContig.c:5111:9: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
   fgets ( line, lineLen, fp1 );
         ^
orderContig.c: In function ‘Links2Scaf’:
orderContig.c:5304:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
  fgets ( line, lineLen, fp );
        ^
prlHashReads.c: In function ‘AIORead’:
prlHashReads.c:745:6: warning: format ‘%s’ expects argument of type ‘char *’, but argument 3 has type ‘int’ [-Wformat=]
      fprintf ( stderr, "Error:%s.\n", errno );
      ^
prlRead2Ctg.c: In function ‘basicContigInfo’:
prlRead2Ctg.c:726:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
  fgets ( lldne, sizeof ( lldne ), fp );
        ^
prlRead2Ctg.c:731:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
  fgets ( lldne, sizeof ( lldne ), fp );
        ^
read2scaf.c: In function ‘locateReadOnScaf’:
read2scaf.c:305:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
  fgets ( line, 1024, fp );
        ^
readseq1by1.c: In function ‘read1seqfq’:
readseq1by1.c:401:10: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
    fgets ( str, lineLen, fp ); // pass quality value line
          ^
iterate.c: In function ‘getNewHash’:
iterate.c:604:2: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 3 has type ‘unsigned int’ [-Wformat=]
  fprintf ( stderr, "%lld edge(s) deleted in length of 0.\n", deletecount );
  ^
iterate.c: In function ‘fresh’:
iterate.c:2156:3: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long long int’ [-Wformat=]
   fprintf ( stderr, "Refresh edge: %d kmer(s) found.\n", newfoundcount );
   ^
iterate.c:2157:3: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long long int’ [-Wformat=]
   fprintf ( stderr, "Refresh edge: %d kmer(s) not found.\n", newnotfoundcount );
   ^
make[1]: Leaving directory `/share/SOAPdenovo2/standardPregraph'
standardPregraph/main.o: In function `main':
main.c:(.text.startup+0xff): undefined reference to `call_pregraph_sparse'
collect2: error: ld returned 1 exit status
make: *** [SOAPdenovo-63mer] Error 1

should have a real config.example

I read the README file trying to learn how to prepare the "example.config" file, but there is no such a file anywhere. After several minutes, I finally found more details about it at the appendix part of README. For a regular user, you wouldn't expect them to be so smart to know "OK, as long as I keep reading, I will find the answer in the appendix part of README". So, I think it would be more user friendly to have a real example configuration file in the repository or at least say something about the "example.config" when it first appears in the README file. You know, Add something in parentheses after "example.config" like "you can see the format of this example file in appendix A below" or "more details of example.config could be found in appendix A below".

binaries of newer versions

I have some troubles to compile SOAPdenovo2. So, I wanted to give a try to pre-compiled binaries but I found only 3 years old binaries on source forge. Would it be possible to upload somewhere static binaries of newer versions? Thanks.

Please add release tags

Hi,
you might probably know that soapdenovo2 is distributed by Debian. The Debian Med team is maintaining the package inside Debian and it would help to simplify our work if you could add version tags to your releases since we will be automatically informed if new releases will be available.
Kind regards, Andreas.

version `GLIBCXX_3.4.20' not found

Hi, apparently the binaries compiled with no error, but I'm getting these erros I've never seen with previous versions:

/home/user/bin/SOAPdenovo-63mer: /usr/local/gcc-4.8.1/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/user/bin/SOAPdenovo-63mer)
/home/user/bin/SOAPdenovo-63mer: /usr/local/gcc-4.8.1/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /home/user/bin/SOAPdenovo-63mer)
/home/user/bin/SOAPdenovo-63mer: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/user/bin/SOAPdenovo-63mer)

When I used fusion module no Arc file is created

I am trying to scaffold megahit contigs using Soapdenovo, but when I run the fusion module using this command
./finalFusion -c /dir_1/dir/*.fasta -D -K 33
Empty arc file is created, also there is another file with extension *.conver is created.
How could I solve this problem as scaff command doesn't work without .Arc file?

Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.