Giter VIP home page Giter VIP logo

soapdenovo2's Introduction

Build Status

Contact: Ruibang Luo
Email: [email protected]

Manual of SOAPdenovo2

About MEGAHIT

MEGAHIT works with single-cell sequencing data and metagenomcis data. Compare to SOAPdenovo, it generates longer contigs and consumes less memory.

To scaffold the contigs generated by MEGAHIT, please use SOAPdenovo-fusion. It is a preparation module that takes contigs as input and generates files that could be used consecutively by SOAPdenovo's map and scaff module.

Reference:

MEGAHIT: An ultra-fast single-node solution for large and complex metagenomics assembly via succinct de Bruijn graph

Manuscript

Github

For MAC users

Please use brew to SOAPdenovo. SOAPdenovo's package in Homebrew-science is managed by Shaun Jackman.

Introduction

SOAPdenovo is a novel short-read assembly method that can build a de novo draft assembly for the human-sized genomes. The program is specially designed to assemble Illumina GA short reads. It creates new opportunities for building reference sequences and carrying out accurate analyses of unexplored genomes in a cost effective way.

System Requirement

SOAPdenovo aims for large plant and animal genomes, although it also works well on bacteria and fungi genomes. It runs on 64-bit Linux system with a minimum of 5G physical memory. For big genomes like human, about 150 GB memory would be required.

Installation

  1. You can download the pre-compiled binary according to your platform, unpack using "tar -zxf ${destination folder} download.tgz" and execute directly.
  2. Or download the source code, unpack to ${destination folder} with the method above, and compile by using GNU make with command "make" at ${destination folder}/SOAPdenovo-V2.04.

How to use it

1. Configuration file

For big genome projects with deep sequencing, the data is usually organized as multiple read sequence files generated from multiple libraries. The configuration file tells the assembler where to find these files and the relevant information. "example.config" is an example of such a file.

The configuration file has a section for global information, and then multiple library sections. Right now only "max_rd_len" is included in the global information section. Any read longer than max_rd_len will be cut to this length.

The library information and the information of sequencing data generated from the library should be organized in the corresponding library section. Each library section starts with tag [LIB] and includes the following items:

1) avg_ins
   This value indicates the average insert size of this library or the peak value position in the insert size distribution figure.
2) reverse_seq
   This option takes value 0 or 1. It tells the assembler if the read sequences need to be complementarily reversed.
Illumima GA produces two types of paired-end libraries: a) forward-reverse, generated from fragmented DNA ends with typical insert size less than 500 bp; b) reverse-forward, generated from circularizing libraries with typical insert size greater than 2 Kb. The parameter "reverse_seq" should be set to indicate this: 0, forward-reverse; 1, reverse-forward.
3) asm_flags
   This indicator decides in which part(s) the reads are used. It takes value 1(only contig assembly), 2 (only scaffold assembly), 3(both contig and scaffold assembly), or 4 (only gap closure).
4) rd_len_cutof
   The assembler will cut the reads from the current library to this length.
5) rank
   It takes integer values and decides in which order the reads are used for scaffold assembly. Libraries with the same "rank" are used at the same time during scaffold assembly.
6) pair_num_cutoff
   This parameter is the cutoff value of pair number for a reliable connection between two contigs or pre-scaffolds. The minimum number for paired-end reads and mate-pair reads is 3 and 5 respectively.
7) map_len
   This takes effect in the "map" step and is the minimun alignment length between a read and a contig required for a reliable read location. The minimum length for paired-end reads and mate-pair reads is 32 and 35 respectively.

The assembler accepts read file in three kinds of formats: FASTA, FASTQ and BAM. Mate-pair relationship could be indicated in two ways: two sequence files with reads in the same order belonging to a pair, or two adjacent reads in a single file (FASTA only) belonging to a pair. If a read in bam file fails platform/vendor quality checks(the flag field 0x0200 is set), itself and it's paired read would be ignored.

In the configuration file single end files are indicated by "f=/path/filename" or "q=/pah/filename" for fasta or fastq formats separately. Paired reads in two fasta sequence files are indicated by "f1=" and "f2=". While paired reads in two fastq sequences files are indicated by "q1=" and "q2=". Paired reads in a single fasta sequence file is indicated by "p=" item. Reads in bam sequence files is indicated by "b=".

All the above items in each library section are optional. The assembler assigns default values for most of them. If you are not sure how to set a parameter, you can remove it from your configuration file.

2. Get started

Once the configuration file is available, a typical way to run the assembler is:

${bin} all -s config_file -K 63 -R -o graph_prefix 1>ass.log 2>ass.err

User can also choose to run the assembly process step by step as:
step1:
${bin} pregraph -s config_file -K 63 -R -o graph_prefix 1>pregraph.log 2>pregraph.err
OR
${bin} sparse_pregraph -s config_file -K 63 -z 5000000000 -R -o graph_prefix 1>pregraph.log 2>pregraph.err

step2:
${bin} contig -g graph_prefix -R 1>contig.log 2>contig.err

step3:
${bin} map -s config_file -g graph_prefix 1>map.log 2>map.err

step4:
${bin} scaff -g graph_prefix -F 1>scaff.log 2>scaff.err

3.Options

3.1 Options for all (pregraph-contig-map-scaff)

  -s     configFile: the config file of solexa reads
  -o     outputGraph: prefix of output graph file name
  -K        kmer(min 13, max 63/127): kmer size, [23]
  -p        n_cpu: number of cpu for use, [8]
  -a        initMemoryAssumption: memory assumption initialized to avoid further reallocation, unit G, [0]
  -d        KmerFreqCutoff: kmers with frequency no larger than KmerFreqCutoff will be deleted, [0]
  -R (optional)  resolve repeats by reads, [NO]
  -D        EdgeCovCutoff: edges with coverage no larger than EdgeCovCutoff will be deleted, [1]
  -M        mergeLevel(min 0, max 3): the strength of merging similar sequences during contiging, [1]
  -m        max k when using multi kmer
  -e        weight to filter arc when linearize two edges(default 0)
  -r (optional)  keep available read(*.read)
  -E (optional)  merge clean bubble before iterate
  -f (optional)  output gap related reads in map step for using SRkgf to fill gap, [NO]
  -k        kmer_R2C(min 13, max 63): kmer size used for mapping read to contig, [K]
  -F (optional)  fill gaps in scaffold, [NO]
  -u (optional)  un-mask contigs with high/low coverage before scaffolding, [mask]
  -w (optional)  keep contigs weakly connected to other contigs in scaffold, [NO]
  -G        gapLenDiff: allowed length difference between estimated and filled gap, [50]
  -L        minContigLen: shortest contig for scaffolding, [K+2]
  -c      minContigCvg: minimum contig coverage (c*avgCvg), contigs shorter than 100bp with coverage smaller than c*avgCvg will be masked before scaffolding unless -u is set, [0.1]
  -C      maxContigCvg: maximum contig coverage (C*avgCvg), contigs with coverage larger than C*avgCvg or contigs shorter than 100bp with coverage larger than 0.8*C*avgCvg will be masked before scaffolding unless -u is set, [2]
  -b      insertSizeUpperBound: (b*avg_ins) will be used as upper bound of insert size for large insert size ( > 1000) when handling pair-end connections between contigs if b is set to larger than 1, [1.5]
  -B      bubbleCoverage: remove contig with lower cvoerage in bubble structure if both contigs' coverage are smaller than bubbleCoverage*avgCvg, [0.6]
  -N        genomeSize: genome size for statistics, [0]
  -V (optional)  output visualization information of assembly, [NO]

3.2 Options for sparse_pregraph

  Usage: ./SOAPdenovo2 sparse_pregraph -s configFile -K kmer -z genomeSize -o outputGraph [-g maxKmerEdgeLength -d kmerFreqCutoff -e kmerEdgeFreqCutoff -R -r runMode -p n_cpu]
  -s      configFile: the config file of solexa reads
  -K         kmer(min 13, max 63/127): kmer size, [23]
  -g         maxKmerEdgeLength(min 1, max 25): number of skipped intermediate kmers, [15]
  -z         genomeSize(mandatory): estimated genome size
  -d         kmerFreqCutoff: delete kmers with frequency no larger than,[1]
  -e         kmerEdgeFreqCutoff: delete kmers' related edge with frequency no larger than [1]
  -R (optional)   output extra information for resolving repeats in contig step, [NO]
  -r         runMode: 0 build graph & build edge and preArc, 1 load graph by prefix & build edge and preArc, 2 build graph only, 3 build edges only, 4 build preArcs only [0]
  -p         n_cpu: number of cpu for use,[8]
  -o         outputGraph: prefix of output graph file name

4. Output files

4.1 These files are output as assembly results:

a. *.contig
  contig sequences without using mate pair information.
b. *.scafSeq
  scaffold sequences (final contig sequences can be extracted by breaking down scaffold sequences at gap regions).

4.2 There are some other files that provide useful information for advanced users, which are listed in Appendix B.

5. FAQ

5.1 How to set K-mer size?

The program accepts odd numbers between 13 and 31. Larger K-mers would have higher rate of uniqueness in the genome and would make the graph simpler, but it requires deep sequencing depth and longer read length to guarantee the overlap at any genomic location.

The sparse pregraph module usually needs 2-10bp smaller kmer length to achieve the same performance as the original pregraph module.

5.2 How to set genome size(-z) for sparse pregraph module?

The -z parameter for sparse pregraph should be set a litter larger than the real genome size, it is used to allocate memory.

5.3 How to set library rank?

SOAPdenovo will use the pair-end libraries with insert size from smaller to larger to construct scaffolds. Libraries with the same rank would be used at the same time. For example, in a dataset of a human genome, we set five ranks for five libraries with insert size 200-bp, 500-bp, 2-Kb, 5-Kb and 10-Kb, separately. It is desired that the pairs in each rank provide adequate physical coverage of the genome.

APPENDIX A: an example.config

#maximal read length
max_rd_len=100
[LIB]
#average insert size
avg_ins=200
#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=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
#a pair of fastq file, read 1 file should always be followed by read 2 file
q1=/path/**LIBNAMEA**/fastq1_read_1.fq
q2=/path/**LIBNAMEA**/fastq1_read_2.fq
#another pair of fastq file, read 1 file should always be followed by read 2 file
q1=/path/**LIBNAMEA**/fastq2_read_1.fq
q2=/path/**LIBNAMEA**/fastq2_read_2.fq
#a pair of fasta file, read 1 file should always be followed by read 2 file
f1=/path/**LIBNAMEA**/fasta1_read_1.fa
f2=/path/**LIBNAMEA**/fasta1_read_2.fa
#another pair of fasta file, read 1 file should always be followed by read 2 file
f1=/path/**LIBNAMEA**/fasta2_read_1.fa
f2=/path/**LIBNAMEA**/fasta2_read_2.fa
#fastq file for single reads
q=/path/**LIBNAMEA**/fastq1_read_single.fq
#another fastq file for single reads
q=/path/**LIBNAMEA**/fastq2_read_single.fq
#fasta file for single reads
f=/path/**LIBNAMEA**/fasta1_read_single.fa
#another fasta file for single reads
f=/path/**LIBNAMEA**/fasta2_read_single.fa
#a single fasta file for paired reads
p=/path/**LIBNAMEA**/pairs1_in_one_file.fa
#another single fasta file for paired reads
p=/path/**LIBNAMEA**/pairs2_in_one_file.fa
#bam file for single or paired reads, reads 1 in paired reads file should always be followed by reads 2
#	NOTE: If a read in bam file fails platform/vendor quality checks(the flag field 0x0200 is set), itself and it's paired read would be ignored.
b=/path/**LIBNAMEA**/reads1_in_file.bam
#another bam file for single or paired reads
b=/path/**LIBNAMEA**/reads2_in_file.bam
[LIB]
avg_ins=2000
reverse_seq=1
asm_flags=2
rank=2
# 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=/path/**LIBNAMEB**/fastq_read_1.fq
q2=/path/**LIBNAMEB**/fastq_read_2.fq
f1=/path/**LIBNAMEA**/fasta_read_1.fa
f2=/path/**LIBNAMEA**/fasta_read_2.fa
p=/path/**LIBNAMEA**/pairs_in_one_file.fa
b=/path/**LIBNAMEA**/reads_in_file.bam

Appendix B: output files

1. Output files from the command "pregraph"

   a. *.kmerFreq
      Each row shows the number of Kmers with a frequency equals the row number. Note that those peaks of frequencies which are the integral multiple of 63 are due to the data structure.
   b. *.edge
      Each record gives the information of an edge in the pre-graph: length, Kmers on both ends, average kmer coverage, whether it's reverse-complementarily identical and the sequence.
   c. *.markOnEdge & *.path
      These two files are for using reads to solve small repeats.
   e. *.preArc
      Connections between edges which are established by the read paths.
   f. *.vertex
      Kmers at the ends of edges.
   g. *.preGraphBasic
      Some basic information about the pre-graph: number of vertex, K value, number of edges, maximum read length etc.

2. Output files from the command "contig"

   a. *.contig
      Contig information: corresponding edge index, length, kmer coverage, whether it's tip and the sequence. Either a contig or its reverse complementry counterpart is included. Each reverse complementary contig index is indicated in the *.ContigIndex file.
   b. *.Arc
      Arcs coming out of each edge and their corresponding coverage by reads
   c. *.updated.edge
      Some information for each edge in graph: length, Kmers at both ends, index difference between the reverse-complementary edge and this one.
   d. *.ContigIndex
      Each record gives information about each contig in the *.contig: it's edge index, length, the index difference between its reverse-complementary counterpart and itself.

3. Output files from the command "map"

   a. *.peGrads
      Information for each clone library: insert-size, read index upper bound, rank and pair number cutoff for a reliable link. This file can be revised manually for scaffolding tuning.
   b. *.readOnContig
      Reads' locations on contigs. Here contigs are referred by their edge index. Howerver about half of them are not listed in the *.contig file for their reverse-complementary counterparts are included already.
   c. *.readInGap
      This file includes reads that could be located in gaps between contigs. This information will be used to close gaps in scaffolds if "-F" is set.

4. Output files from the command "scaff"

   a. *.newContigIndex
      Contigs are sorted according their length before scaffolding. Their new index are listed in this file.  This is useful if one wants to corresponds contigs in *.contig with those in *.links.
   b. *.links
      Links between contigs which are established by read pairs. New index are used.
   c. *.scaf_gap
      Contigs in gaps found by contig graph outputted by the contiging procedure. Here new index are used.
   d. *.scaf
      Contigs for each scaffold: contig index (concordant to index in *.contig),  approximate start position on scaffold, orientation, contig length, and its links to others contigs.
   e. *.gapSeq
      Gap sequences between contigs.
   f. *.scafSeq
      Sequences of each scaffolds.
   g. *.contigPosInscaff
      Contigs' positions in each scaffold.
   h. *.bubbleInScaff
      Contigs that form bubble structures in scaffolds. Every two contigs form a bubble and the contig with higher coverage will be kept in scaffold.
   i. *.scafStatistics
      Statistic information of final scaffold and contig.

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

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".

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 ??

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.

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

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

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

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

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.

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

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!

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

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


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?

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 ?

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

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_

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

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!

"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.

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

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?

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

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.

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

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

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

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.

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)

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

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 .

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

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!

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

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.

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.

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.

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

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

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

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

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.

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.

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

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

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.