Structural variant detection and association testing

Related tags

Biology wham
Overview

wham

The wham suite consists of two programs, wham and whamg. wham, the original tool, is a very sensitive method with a high false discovery rate. The second program, whamg, is more accurate and better suited for general structural variant (SV) discovery. For most studies, we strongly recommend using whamg.

Below, we outline the basics of running whamg. Important sections are highlighted in bold text. Please cite the wham paper if you use wham or whamg.

Build Status Analytics Code Climate

whamg workflow

alt tag

Installing whamg

whamg depends on CMake and OpenMP. These dependances are commonly preinstalled on various Linux distributions. The following command should install wham into your current working directory:

git clone --recursive  https://github.com/zeeev/wham.git; cd wham; make 

Running whamg

whamg uses paired alignments generated with BWA-MEM. whamg uses the same BAMs as SNV and INDEL calling tools. Duplicates should be marked or removed, and indel realignment is helpful. whamg is agnostic regarding the BWA-MEM –M flag (if you don’t know what that means, don’t worry). It is important that the –R flag in BWA-MEM is used. whamg requires read-group information. Currently, whamg assumes one library per bam file.

Example 1

export EXCLUDE=GL000207.1,GL000226.1,GL000229.1,GL000231.1,GL000210.1,GL000239.1,GL000235.1,GL000201.1,GL000247.1,GL000245.1,GL000197.1,GL000203.1,GL000246.1,GL000249.1,GL000196.1,GL000248.1,GL000244.1,GL000238.1,GL000202.1,GL000234.1,GL000232.1,GL000206.1,GL000240.1,GL000236.1,GL000241.1,GL000243.1,GL000242.1,GL000230.1,GL000237.1,GL000233.1,GL000204.1,GL000198.1,GL000208.1,GL000191.1,GL000227.1,GL000228.1,GL000214.1,GL000221.1,GL000209.1,GL000218.1,GL000220.1,GL000213.1,GL000211.1,GL000199.1,GL000217.1,GL000216.1,GL000215.1,GL000205.1,GL000219.1,GL000224.1,GL000223.1,GL000195.1,GL000212.1,GL000222.1,GL000200.1,GL000193.1,GL000194.1,GL000225.1,GL000192.1,NC_007605
whamg -e $EXCLUDE -a Homo_sapiens_assembly19.fasta -f CHM1_1.bam | perl utils/filtWhamG.pl > chm1.vcf  2> chm1.err

In the example above, whamg will process all chomosomes in the CHM1 genome. The export statement allows you to mask certain chromosomes/contigs; it may be useful to mask certain chromosomes that are either problematic for read mapping (i.e. rDNA) or short contigs from de novo genome assemblies. The provided example masks human contigs that we have found to be problematic in SV calling. The standard output contains the SV calls and is written to chm1.vcf. The standard error is written to chm1.err, and includes progress updates that can be useful to track runtimes and errors. If you have a trio or a quad and want to joint call, you can pass the bam files as a comma-separated list or a simple text file with the full path to each bam file on each line. PLEASE NOTE: It is very important that the –e or -c flags are used. If –e or –c are not specified, there is a chance that whamg will incorrectly estimate the insert sizes of the library.

A filtering script is in the pipe to increase specificity.

Example 2

whamg -x 2 -e $EXCLUDE -a Homo_sapiens_assembly19.fasta -f CHM1_1.bam > chm1.vcf  2> chm1.err

In the example above, we are telling whamg to only use two CPUs (-x).

Example 3

whamg  -g graph.txt -x 2 -e $EXCLUDE -a Homo_sapiens_assembly19.fasta -f CHM1_1.bam > chm1.vcf  2> chm1.err

In the example above, each putative structural variant will be written to a flat text file. Individual graphs can be visualized with dotviz or gephi. This output can be helpful for interrogating missing calls or complex structural variants. Do not use this option on a genome-wide run as the file sizes can be extremely large.

Explanation of options

-f : A comma-separated list of indexed bam files or a sample text file that looks like:

NA12878.sort.bam
NA12776.sort.bam

-a: The matched reference genome. It is important that the bams were aligned to the same reference sequence. -s: whamg will exit after collecting the basic statistics:

INFO: for Sample:CHM1
  STATS:    CHM1: mean depth ..............: 38.5064
  STATS:    CHM1: sd depth ................: 8.93088
  STATS:    CHM1: mean insert length: .....: 292.639
  STATS:    CHM1: median insert length ....: 264
  STATS:    CHM1: sd insert length ........: 129.843
  STATS:    CHM1: lower insert cutoff .....: 32.9538
  STATS:    CHM1: upper insert cutoff .....: 617.245
  STATS:    CHM1: average base quality ....: 36.2782
  STATS:    CHM1: average mapping quality .: 57.9975
  STATS:    CHM1: number of reads used ....: 100405

-g: The file to write the graphs to. Not recommended for whole-genome runs.

-e: A comma-separated list of seqids to skip.

-c: A comma-sepearted list of seqids to use for estimating the insert size distribution.

-r: Region in seqid:start-end format. Runs whamg on a specific genomic region.

-x: The number of CPUs whamg will attempt to use. During the first step, whamg reads the entire bam file. If you notice CPU usage dropping, I/O might be swamping out. After the bam files are read, there are several single CPU steps before whamg finishes. The optimal number of CPUs to use really depends on I/O speeds.

-i: whamg uses the BWA-MEM SA tag (default). Older versions of BWA-MEM used a different tag, XP (-i XP).

-z: Sometimes whamg can fail to sample enough reads (low-fold coverage, exome, …). The –z flag forces whamg to keep sampling random regions until it succeeds

VCF 4.2 output

In this section, each INFO and FORMAT field will be covered. Here is an example whamg VCF header:

##fileformat=VCFv4.2
##source=WHAM-GRAPHENING:v1.7.0-225-g1e35-dirty
##reference=Homo_sapiens_assembly19.fasta
##INFO=<ID=A,Number=1,Type=Integer,Description="Total pieces of evidence">
##INFO=<ID=CIEND,Number=2,Type=Integer,Description="Confidence interval around END for imprecise variants">
##INFO=<ID=CIPOS,Number=2,Type=Integer,Description="Confidence interval around POS for imprecise variants">
##INFO=<ID=CF,Number=1,Type=Float,Description="Fraction of reads in graph that cluster with SVTYPE pattern">
##INFO=<ID=CW,Number=5,Type=Float,Description="SVTYPE weight 0-1; DEL,DUP,INV,INS,BND">
##INFO=<ID=D,Number=1,Type=Integer,Description="Number of reads supporting a deletion">
##INFO=<ID=DI,Number=1,Type=Float,Description="Average distance of mates to breakpoint">
##INFO=<ID=END,Number=1,Type=Integer,Description="End position of the variant described in this record">
##INFO=<ID=EV,Number=1,Type=Integer,Description="Number everted mate-pairs">
##INFO=<ID=I,Number=1,Type=Integer,Description="Number of reads supporting an insertion">
##INFO=<ID=SR,Number=1,Type=Integer,Description="Number of split-reads supporing SV">
##INFO=<ID=SS,Number=1,Type=Integer,Description="Number of split-reads supporing SV">
##INFO=<ID=SVLEN,Number=.,Type=Integer,Description="Difference in length between REF and ALT alleles">
##INFO=<ID=SVTYPE,Number=1,Type=String,Description="Type of structural variant">
##INFO=<ID=T,Number=1,Type=Integer,Description="Number of reads supporting a BND">
##INFO=<ID=TAGS,Number=.,Type=Integer,Description="SM tags with breakpoint support">
##INFO=<ID=TF,Number=1,Type=Integer,Description="Number of reads mapped too far">
##INFO=<ID=U,Number=1,Type=Integer,Description="Number of reads supporting a duplication">
##INFO=<ID=V,Number=1,Type=Integer,Description="Number of reads supporting an inversion">
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
##FORMAT=<ID=DP,Number=1,Type=Integer,Description="Read Depth">
##FORMAT=<ID=SP,Number=1,Type=Integer,Description="Per sample SV support">
#CHROM	POS	ID	REF	ALT	QUAL	FILTER	INFO	FORMAT	CHM1
FIELD DESCRIPTION
A Each pair of reads counts as a piece of evidence. The total evidence is summed across the whamg graph structure. Since whamg does not initially cluster similar graph structures, you may see several SVs with low total support that are off by a couple base pairs. Merging SVs is a good idea.
CIEND and CIPOS This field is fixed at [-10, 10]. Most whamg calls are accurate to within a couple base pairs. However, this field is updated during SV merging.
CF Larger SVs (greater than average insert size of the library) generate mate pair patterns. For example, the mates of reads overlapping the 5’ end of a deletion should map downstream of the 3’ breakpoint. Each SV class generates a different pattern. CF is the fraction of the reads in the graph structure that cluster according to SVTYPE.
CW Each mate pair and split read can contribute evidence to one or more SVTYPES. The CW field describes what fraction of the total support belongs to each SVTYPE. In the case of inverted deletions, you might find that both the inversion and deletion have high weights. This field sums to one.
D The number of mate pairs in the graph that support a deletion.
DI This field is related to the CF field. This measures the average distance of the mate pairs to the alternative breakpoint. Inversions can have large DI scores, but deletions should not
END This is a standard VCF field. Insertions start and end at the same position.
EV The number of everted mate pairs (← →).
I The number of reads supporting and inversion.
SR The number of split reads in the graph. This is not necessarily the same as the number of split reads between the breakpoints.
SS The number of reads on the same strand (→ → or ← ←).
SVLEN This is a standard VCF field.
SVTYPE This is a standard VCF field.
T The number of reads supporting and interchomosmal event.
TAGS The individuals (SMs) that are in the graph.
TF The number of mate pairs that map too far away.
U The number of reads that support duplication.
V The number of reads that support an inversion.
GT Genotype. Currently, there is no genotype provided. We are working on a fast and accurate genotyper.
DP Depth. Currently, no depth is provided.
SP This is the number of reads in each individual that supports the exact breakpoint. Because of breakpoint variability, this number might be lower than expected. Be cautious when filtering on SP.

Filtering

To balance sensitivity and specificity it is wise to filter the raw whamg output. Filtering always depends on your dataset; i.e. high depth datasets should be treated differently than low depth datasets. Similarly, joint calling/family calling should be filtered differently than individual level calling. Here are some tricks to help guide you. There are many different tools and strategies that will work for filtering, below are just a few ways you could filter whamg calls.

The discussion below covers filtering a high coverage trio, but the concepts will be the same for a single genome.

Size filtering

Whamg emits calls with a wide range of sizes; where larger and smaller events should be subject to more scrutiny. As a rough rule, we remove calls smaller than 50bp and larger than 2Mbs. This will discard real calls, but will improve the overall accuracy.

Total support (INFO field “A”)

For a high coverage human genome (~ 50X), filtering calls with less than 5 supporting reads is wise. Below is a plot of the total support for a joint called trio broken into high and low support bins. Using a cutoff of 5 removes 20% of the calls (22,955/38,735 remain), which is reasonable given a joint called high coverage trio.

alt tag

Cross chromosomal mappings

Whamg does not call BNDs/translocations, but it is aware of this type of evidence. We filter out events that have high cross-chromosome mappings. Pull out the “CW” info field shown below. In it you will find, listed in order, the fraction of reads supporting each SV Type. Remove SVs that have a “BND CW” greater than 0.2.


##INFO=<ID=CW,Number=5,Type=Float,Description="SVTYPE weight 0-1; DEL,DUP,INV,INS,BND">

Low support across jointly called SVs

For joint called variants, low support coming from each individual can sum up to moderate total support. [We want to remove calls where no individual has significant support?] From the format field, shown below, pull out the “SP” field. This enumerates the evidence in each individual. We remove calls where none of the individuals reach an arbitrary level. This filter is similar to the “Total support filter”


##FORMAT=<ID=SP,Number=1,Type=Integer,Description="Per sample SV support">

wham

wham is the other SV called provided in the suite and represents the codebase published in our PLoS Computational Biology paper. All wham documents can be found on the wiki:

http://zeeev.github.io/wham/

WHole-genome Alignment Metrics (wham) is a structural variant (SV) caller that integrates several sources of mapping information to identify SVs. wham classifies SVs using a flexible and extendable machine-learning algorithm (random forest). wham is not only accurate at identifying SVs, but its association test can identify shared SVs enriched in a cohort of diseased individuals compared to a background of healthy individuals.

wham can be easily run as a stand-alone tool or as part of gkno (http://gkno.me) or bcbio-nextgen (http://bcbio-nextgen.readthedocs.org) pipelines.

Comments
  • Buffer overflow for WHAM-GRAPHENING

    Buffer overflow for WHAM-GRAPHENING

    I was trying to run WHAM-GRAPHENING on the same samples where WHAM-BAM was working quite well, and I keep getting the same error message regardless of the memory size I allocate for the run:

    INFO: Reads with mapping quality below 5 will be filtered. INFO: fasta file: Caenorhabditis_elegans.WBcel235.dna.toplevel.fa INFO: target bars: CD0001b.bam INFO: graphs will be written to: CD0001b.graphening.raw.txt INFO: gathering stats (may take some time) for bam: CD0001b.bam INFO: processed 0 reads for: CD0001b.bam INFO: processed 0 reads for: CD0001b.bam ... INFO: processed 0 reads for: CD0001b.bam INFO: for file: CD0001b.bam CD0001b.bam: mean depth: ......... 45.3391 CD0001b.bam: sd depth: ........... 22.445 CD0001b.bam: mean insert length: . 380.299 CD0001b.bam: median insert length. 368 CD0001b.bam: sd insert length .... 85.0974 CD0001b.bam: lower insert length . 167.556 CD0001b.bam: upper insert length . 593.043 CD0001b.bam: average base quality: 38.4901 CD0001b.bam: number of reads used: 100144

    INFO: Loading discordant reads into forest. INFO: Reading: CD0001b.bam ... INFO: Gathering alleles. INFO: Refined and genotyped 0/1 breakpoints *** buffer overflow detected ***: WHAM-GRAPHENING terminated ======= Backtrace: ========= /lib64/libc.so.6(__fortify_fail+0x37)[0x3917902567] /lib64/libc.so.6[0x3917900450] WHAM-GRAPHENING[0x41ba7d] WHAM-GRAPHENING[0x42670a] WHAM-GRAPHENING[0x4052a0] /lib64/libc.so.6(__libc_start_main+0xfd)[0x391781ed5d] WHAM-GRAPHENING[0x408c61] ======= Memory map: ======== 00400000-0049d000 r-xp 00000000 00:12 29251231906 WHAM-GRAPHENING 0069d000-0069e000 r--p 0009d000 00:12 29251231906 WHAM-GRAPHENING 0069e000-0069f000 rw-p 0009e000 00:12 29251231906 WHAM-GRAPHENING 0069f000-006a0000 rw-p 00000000 00:00 0 ... 2ba6e40c3000-2ba6e40ca000 rw-p 00000000 00:00 0 7fff0fdfb000-7fff0fe11000 rw-p 00000000 00:00 0 [stack] 7fff0fef2000-7fff0fef3000 r-xp 00000000 00:00 0 [vdso] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] error: 23287 Aborted (core dumped) WHAM-GRAPHENING -m 5 -a Caenorhabditis_elegans.WBcel235.dna.toplevel.fa -f CD0001b.bam -g CD0001b.graphening.raw.txt > wham.CD0001b.out

    Thank you in advance for any help.

    opened by nvolkova 13
  • FATAL: was not able to gather stats on bamfile

    FATAL: was not able to gather stats on bamfile

    Dear WHAM´s team: I am trying to run WHAM for 7 bam files, each one corresponds to one sample. I would like to do an association test between one of the samples and the other six. Then, I am running:

    $ WHAM-BAM -f ref.fa -m 2 -q 15 -p 10 -x 10 -t 1.sort.rmdup.bam -b 2.sort.rmdup.bam,3.sort.rmdup.bam,4.sort.rmdup.bam,5.sort.rmdup.bam,6.sort.rmdup.bam,7.sort.rmdup.bam > 1_vs_all.vcf

    But I am getting this error:

    INFO: WHAM-BAM will using the following fasta: ref.fa INFO: WHAM-BAM requires : 2 soft-clips to score breakpoint INFO: WHAM-BAM skip soft-clips with average base quality below: 15 INFO: WHAM-BAM skip soft-clips with mapping quaity below: 10 INFO: OpenMP will roughly use 10 threads INFO: target bams: 1.sort.rmdup.bam INFO: background bams: 2.sort.rmdup.bam 3.sort.rmdup.bam 4.sort.rmdup.bam 5.sort.rmdup.bam 6.sort.rmdup.bam 7.sort.rmdup.bam INFO: gathering stats for each bam file. FATAL: was not able to gather stats on bamfile: 1.sort.rmdup.bam

    All the bam files were generated using BWA-MEM, and processed with samtools Version: 0.1.19. Here the parameters: $ bwa mem -R '@RG\tID:1\tSM:1' -M -t 18 ref.fa 1_R1.PF.fastq.gz 1_R2.PF.fastq.gz | samtools view -S -b - > 1.bam $ samtools sort 1.bam 1.sort.bam $ samtools rmdup 1.sort.bam.bam 1.sort.rmdup.bam

    Any idea what is going on? Or at least something different to try? Thanks in advance, Gabriel

    opened by gabyrech 13
  • FATAL: Unable to gather stats on bamfile

    FATAL: Unable to gather stats on bamfile

    Dear WHAM´s team: I am trying to run both wham and whamg for SV calling using Arabidopsis bam files (~20x), the command lines I used is:

    $wham -x 2 -f ../../1-TAIR10/tair10_um_new.fa -t Ler_0_ler_phaseI.bam > NEW_wham_ler_0.vcf 2> NEW_wham_ler_0.err $whamg -x 2 -a ../../1-TAIR10/tair10_um_new.fa -f Ler_0_ler_phaseI.bam -c Chr1,Chr2,Chr3,Chr4,Chr5 > NEW_whamg_ler_0.vcf 2> NEW_whamg_ler_0.err

    Both of these two command lines run successfully and output of the *.err files are:

    [[email protected]_ 2-TAIR10.BAM]$ tail NEW_wham_ler_0.err INFO: running region: Chr5:22000500-23000500 INFO: running region: Chr5:23000500-24000500 INFO: running region: Chr5:24000500-25000500 INFO: running region: Chr5:12000500-13000500 INFO: running region: Chr5:25000500-26000500 INFO: running region: Chr5:26000500-27000500 INFO: running region: Chr5:13000500-14000500 INFO: running region: chloroplast:500-1000500 INFO: running region: mitochondria:500-1000500 INFO: WHAM-BAM finished normally. [[email protected]_ 2-TAIR10.BAM]$ tail NEW_whamg_ler_0.err INFO: Loading discordant reads into forest. INFO: Reading: Ler_0_ler_phaseI.bam INFO: Ler_0: processed 100Mb of the genome. INFO: Ler_0_ler_phaseI.bam had 1722153 reads that were not processed INFO: Finished loading reads. INFO: Gathering graphs from forest. INFO: Matching breakpoints. INFO: Printing. INFO: done processing trees INFO: WHAM finished normally, goodbye!

    But I just got several header lines in the VCF files and there is no any SVs has been detected. And then I tried to lower the threshold of wham and whamg and still didn't detect any SVs.

    $wham -x 2 -f ../../1-TAIR10/tair10_um_new.fa -t Ler_0_ler_phaseI.bam -m 1 -q 1 -p 1 > test_wham_ler_0.vcf 2> test_wham_ler_0.err $whamg -x 2 -a ../../1-TAIR10/tair10_um_new.fa -f Ler_0_ler_phaseI.bam -c Chr1,Chr2,Chr3,Chr4,Chr5 -m 1 > test_whamg_ler_0.vcf 2> test_whamg_ler_0.err

    Could you please give me any advise about the empty VCF files? Thanks in advance, Leilei

    opened by LeileiCui 12
  • Multi sample running

    Multi sample running

    Hi Zeeev

    I ran WHAM with 100 BAM files (WGS; 50X) and the run was stooped with the error message below. I first thought that there might be a path issue but not really - I checked it. For comparison, I ran with one sample using the same command (the one suggested in the manual page) and it worked fine.

    Then, I ran the multi sample one by increasing thread option. It went further genomic coordinations but still got the error message. I still don't know what the problem was.

    Also, 1) is there any sample number for multi sample run? 2) Multi sample run performs better than single sample run?


    INFO: running region: 1:126000500-127000500 INFO: running region: 2:233000500-234000500 INFO: running region: 1:33000500-34000500 INFO: running region: 2:242000500-243000500 INFO: running region: 1:132000500-133000500 INFO: running region: 3:4000500-5000500 INFO: running region: 1:135000500-136000500 INFO: running region: 3:10000500-11000500 INFO: running region: 1:12000500-13000500 INFO: running region: 3:16000500-17000500 INFO: running region: 1:144000500-145000500 INFO: running region: 1:42000500-43000500 INFO: running region: 3:22000500-23000500 INFO: running region: 1:147000500-148000500 INFO: running region: 3:28000500-29000500 INFO: running region: 3:34000500-35000500 INFO: running region: 1:150000500-151000500 INFO: running region: 3:40000500-41000500 INFO: running region: 3:46000500-47000500 INFO: running region: 1:156000500-157000500 INFO: running region: 3:49000500-50000500 INFO: running region: 3:55000500-56000500 could not open /data/pindel/human_g1k_v37.fasta

    opened by ghost 10
  • Seg fault in initPriors during genotyping

    Seg fault in initPriors during genotyping

    Zev; I'm running wham on some whole genome data and getting consistent segmentation faults on the genotyping step. The backtrace from the core dumps looks like:

    Core was generated by `WHAM-GRAPHENING -b
    Program terminated with signal 11, Segmentation fault.
    #0  0x0000000000422a7c in alignHMM::initPriors(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&) ()
    #1  0x0000000000418341 in genotype(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, breakpoints*) ()
    #2  0x0000000000419157 in main._omp_fn.5 ()
    #3  0x000000000040539d in main ()
    

    I'm a bit stuck about how to debug. Do you have any suggestions about what might be causing this? Thanks much.

    opened by chapmanb 9
  • GATK compatible GLs in VCF output

    GATK compatible GLs in VCF output

    Zev; This is one more small fix for GATK compatible VCF output. GATK expects empty GL output to be just a . instead of .,.,.. The later causes it to die. With this fix everything looks smooth with both VCF output and recalling. Thanks again for all this work getting VCF up and running.

    opened by chapmanb 9
  • Issue with parenthesis in print, using python 3

    Issue with parenthesis in print, using python 3

    Here is an example error:

     File "utils/classify_WHAM_vcf.py", line 46
        print '##INFO=<ID=WC,Number=1,Type=String,Description="WHAM classifier variant type">'
                                                                                             ^
    SyntaxError: Missing parentheses in call to 'print'
    
    opened by sahilseth 8
  • ERROR: wham vcf as an input to MetaSV

    ERROR: wham vcf as an input to MetaSV

    Hello Author,

    I used wham VCF (--wham_vcf flag) with MetaSV and got the following error:

    INFO 2015-10-13 07:47:59,983 metasv.sv_interval Loading SV intervals from Clean_FR07886681_hg19_MC_MQ_sort_dedup.realign.recal.wham.raw.class.vcf ERROR 2015-10-13 07:48:00,559 metasv.sv_interval Ignoring record due to missing SVTYPE or INFO field in Record(CHROM=chr1, POS=9012117, REF=N, ALT=[GACCCTGTACCTTCTTCCTTTAGG]) ERROR 2015-10-13 07:48:00,560 metasv.sv_interval Ignoring record due to missing SVTYPE or INFO field in Record(CHROM=chr1, POS=9012144, REF=N, ALT=[TTGAGATTANANGCGTAAGCCACCNNGNCNNGCCANANATNNATGATTTGAAAAGATGTTTNT]) ERROR 2015-10-13 07:48:00,560 metasv.sv_interval Ignoring record due to missing SVTYPE or INFO field in Record(CHROM=chr1, POS=9015676, REF=N, ALT=[TGCTTTCAGCATCACTGACCTTGCACGCCTCCTTTTAAGGCCCTTC]) ERROR 2015-10-13 07:48:00,560 metasv.sv_interval Ignoring record due to missing SVTYPE or INFO field in Record(CHROM=chr1, POS=9015722, REF=N, ALT=[ACGCCTCCTTTTAAGGCCCTTCCGTCCTTTTCTTGCAAGCAT]) ERROR 2015-10-13 07:48:00,561 metasv.sv_interval Ignoring record due to missing SVTYPE or INFO field in Record(CHROM=chr1, POS=9016688, REF=N, ALT=[CGCCGACCCCCGAGCTCTACACCTTGGNCTACCTTATTTCCCTCCACGACGCTCGTCCGATCTCCCAGNAGNNGGAGGNTGCAGNNAGCCNANGTCA]) ...

    Are there any workarounds for this? Thankyou

    James

    opened by wjaratlerdsiri 8
  • narrowing conversion error during installation

    narrowing conversion error during installation

    Hi

    I'm getting some narrowing conversion error during installation.

    gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)

    In file included from src/lib/phredUtils.h:16:0,
                     from src/bin/whamg.cpp:26:
    src/lib/fastonebigheader.h: In function ‘{anonymous}::v4sf vfasterfc({anonymous}::v4sf)’:
    src/lib/fastonebigheader.h:110:43: error: narrowing conversion of ‘9223372039002259456ull’ from ‘long long unsigned int’ to ‘long long int’ inside { } [-Wnarrowing]
     #define v2dil(x) ((const v4si) { (x), (x) })
                                               ^
    src/lib/fastonebigheader.h:111:18: note: in expansion of macro ‘v2dil’
     #define v4sil(x) v2dil((((unsigned long long) (x)) << 32) | (x))
                      ^
    src/lib/fastonebigheader.h:558:11: note: in expansion of macro ‘v4sil’
       vc.i |= v4sil (0x80000000);
               ^
    src/lib/fastonebigheader.h:110:43: error: narrowing conversion of ‘9223372039002259456ull’ from ‘long long unsigned int’ to ‘long long int’ inside { } [-Wnarrowing]
     #define v2dil(x) ((const v4si) { (x), (x) })
                                               ^
    src/lib/fastonebigheader.h:111:18: note: in expansion of macro ‘v2dil’
     #define v4sil(x) v2dil((((unsigned long long) (x)) << 32) | (x))
                      ^
    src/lib/fastonebigheader.h:558:11: note: in expansion of macro ‘v4sil’
       vc.i |= v4sil (0x80000000);
               ^
    src/lib/fastonebigheader.h: In function ‘{anonymous}::v4sf vfastsin({anonymous}::v4sf)’:
    src/lib/fastonebigheader.h:110:43: error: narrowing conversion of ‘9223372039002259456ull’ from ‘long long unsigned int’ to ‘long long int’ inside { } [-Wnarrowing]
     #define v2dil(x) ((const v4si) { (x), (x) })
                                               ^
    src/lib/fastonebigheader.h:111:18: note: in expansion of macro ‘v2dil’
     #define v4sil(x) v2dil((((unsigned long long) (x)) << 32) | (x))
                      ^
    src/lib/fastonebigheader.h:1478:22: note: in expansion of macro ‘v4sil’
       v4si sign = vx.i & v4sil (0x80000000);
                          ^
    src/lib/fastonebigheader.h:110:43: error: narrowing conversion of ‘9223372039002259456ull’ from ‘long long unsigned int’ to ‘long long int’ inside { } [-Wnarrowing]
     #define v2dil(x) ((const v4si) { (x), (x) })
                                               ^
    src/lib/fastonebigheader.h:111:18: note: in expansion of macro ‘v2dil’
     #define v4sil(x) v2dil((((unsigned long long) (x)) << 32) | (x))
                      ^
    src/lib/fastonebigheader.h:1478:22: note: in expansion of macro ‘v4sil’
       v4si sign = vx.i & v4sil (0x80000000);
                          ^
    src/lib/fastonebigheader.h: In function ‘{anonymous}::v4sf vfastersin({anonymous}::v4sf)’:
    src/lib/fastonebigheader.h:110:43: error: narrowing conversion of ‘9223372039002259456ull’ from ‘long long unsigned int’ to ‘long long int’ inside { } [-Wnarrowing]
     #define v2dil(x) ((const v4si) { (x), (x) })
                                               ^
    src/lib/fastonebigheader.h:111:18: note: in expansion of macro ‘v2dil’
     #define v4sil(x) v2dil((((unsigned long long) (x)) << 32) | (x))
                      ^
    src/lib/fastonebigheader.h:1499:22: note: in expansion of macro ‘v4sil’
       v4si sign = vx.i & v4sil (0x80000000);
                          ^
    src/lib/fastonebigheader.h:110:43: error: narrowing conversion of ‘9223372039002259456ull’ from ‘long long unsigned int’ to ‘long long int’ inside { } [-Wnarrowing]
     #define v2dil(x) ((const v4si) { (x), (x) })
                                               ^
    src/lib/fastonebigheader.h:111:18: note: in expansion of macro ‘v2dil’
     #define v4sil(x) v2dil((((unsigned long long) (x)) << 32) | (x))
                      ^
    src/lib/fastonebigheader.h:1499:22: note: in expansion of macro ‘v4sil’
       v4si sign = vx.i & v4sil (0x80000000);
                          ^
    Makefile:39: recipe for target 'bin/whamg' failed
    make: *** [bin/whamg] Error 1
    

    Thanks!

    opened by Suncuss 7
  • Flags in the info field

    Flags in the info field

    Hi Zev,

    I am trying to understand the various flags in the info field and I have few questions about some of the flags.

    *1) What is the difference between NC and NS? * To my understanding, both seem to be counting soft clipped reads. NS means "The number of primary reads supporting with a soft clip at POS" i.e. reads having soft clipping start exactly at the breakpoint.

    NC means "The number of soft-clipped segments that were collapsed into the consensus sequence". Does that mean it counts the reads that have soft clipped segment passing over the breakpoint. For example: If " . " denotes the breakpoint here, " r " is read and " s " soft clipped read then reads counted in NC flag should be like this diagram: . sssssrrrrr rrrrrrrsssssssss sssssrrrrrrrrrrrrrrrrrrrrrrrrrrrr ssssssssssrrrrrr rrrssssssssssssssss

    First 3 reads have soft-clipping excatly at breakpint so counted in NS. whereas the last two reads have soft clipped segment spanning over the breakpoint. Also, in my Tx call outputs, I see NS have higher value than NC. That means more reads support exact breakpoint than the ones that have soft-clipped section passing over the breakpoint.

    Is my interpretation correct?

    *2) What is the difference between NA and NS? * NA is "The number of reads that support the structural variant listed in ALT". Does this also means the # of reads that have soft clipping at breakpoint. I see this number always have higher value than NS value. Is it because it counts reads that might not pass MQ filter etc. So, NA is total reads supporting breakpoint and NS is number of reads that have passed the threshold filter for MQ, BQ and supports the breakpoint.

    Can you correct if I am wrong in my interpretation.

    Thank you so much for all your help. Ashini

    opened by abolia 4
  • No genotype done in the current version WHAM-Graphening

    No genotype done in the current version WHAM-Graphening

    Hi

    I recently updated the wham-graphening for the version: v1.7.0-199-g6106. I ran the genotyping for merged VCF (three samples in one VCF) and genotyping was not done for some of predictions, like ./. others have 0/1 or 1/1.

    The previous version v1.7.0-184-gd30f was okay for the same input.

    opened by ghost 3
  • [Question] Is Linux ARM64 supported ?

    [Question] Is Linux ARM64 supported ?

    Hi,

    Is ARM64 architecture supported ? Linux and/or MacOS ?

    I am trying to build the project on Ubuntu 20.04 ARM64 but it fails with:

    mkdir bin
    g++ -fstack-protector-all -Wall -DVERSION=\"v1.7.0-311-g4e8c-dirty\" -std=c++0x -Wno-sign-compare -O3 -Isrc/lib -Isrc/bamtools/include -Isrc/bamtools/src -Isrc/ -Isrc/fastahack -Isrc/Complete-Striped-Smith-Waterman-Library/src/ -fopenmp -lz -lm -c -o src/obj/entropy.o src/lib/entropy.cpp
    g++ -fstack-protector-all -Wall -DVERSION=\"v1.7.0-311-g4e8c-dirty\" -std=c++0x -Wno-sign-compare -O3 -Isrc/lib -Isrc/bamtools/include -Isrc/bamtools/src -Isrc/ -Isrc/fastahack -Isrc/Complete-Striped-Smith-Waterman-Library/src/ -fopenmp -lz -lm -c -o src/obj/flag.o src/lib/flag.cpp
    g++ -fstack-protector-all -Wall -DVERSION=\"v1.7.0-311-g4e8c-dirty\" -std=c++0x -Wno-sign-compare -O3 -Isrc/lib -Isrc/bamtools/include -Isrc/bamtools/src -Isrc/ -Isrc/fastahack -Isrc/Complete-Striped-Smith-Waterman-Library/src/ -fopenmp -lz -lm -c -o src/obj/read_pileup.o src/lib/read_pileup.cpp
    g++ -fstack-protector-all -Wall -DVERSION=\"v1.7.0-311-g4e8c-dirty\" -std=c++0x -Wno-sign-compare -O3 -Isrc/lib -Isrc/bamtools/include -Isrc/bamtools/src -Isrc/ -Isrc/fastahack -Isrc/Complete-Striped-Smith-Waterman-Library/src/ -fopenmp -lz -lm -c -o src/obj/readPileUp.o src/lib/readPileUp.cpp
    g++ -fstack-protector-all -Wall -DVERSION=\"v1.7.0-311-g4e8c-dirty\" -std=c++0x -Wno-sign-compare -O3 -Isrc/lib -Isrc/bamtools/include -Isrc/bamtools/src -Isrc/ -Isrc/fastahack -Isrc/Complete-Striped-Smith-Waterman-Library/src/ -fopenmp -lz -lm -c -o src/obj/split.o src/lib/split.cpp
    cd src/Complete-Striped-Smith-Waterman-Library/src && make
    make[1]: Entering directory '/home/gancho/git/wham/src/Complete-Striped-Smith-Waterman-Library/src'
    gcc -c -o ssw.o ssw.c -Wall -O3 -pipe 
    ssw.c:38:10: fatal error: emmintrin.h: No such file or directory
     #include <emmintrin.h>
              ^~~~~~~~~~~~~
    compilation terminated.
    make[1]: *** [Makefile:47: ssw.o] Error 1
    make[1]: Leaving directory '/home/gancho/git/wham/src/Complete-Striped-Smith-Waterman-Library/src'
    make: *** [Makefile:29: src/Complete-Striped-Smith-Waterman-Library/src/ssw_cpp.o] Error 2
    
    

    emmintrin.h could be used only on x86_64 when SSE is available.

    opened by gancho-ivanov 4
  • Meaning of AT Parameters?

    Meaning of AT Parameters?

    When running WHAM-BAM, the resulting VCF has an info-field 'AT', which is a comma-separated list of 15 numerical values; however, I cannot find any information as to what these fields actually mean. I know that the classify_WHAM_vcf.py script uses these values to run a ML model and assign an SVTYPE to each variant call, and I was also able to find a note in the documentation saying, "The average user should not worry about this field." Beyond that, there does not appear to be any explanation.

    Could you possibly provide a brief explanation as to what these fields correspond to, or is there advanced documentation elsewhere that I missed?

    opened by GWheelerEB 0
  • Output vcf file: ALT is not sequence

    Output vcf file: ALT is not sequence

    Hi!

    I'm using whamg by

    export EXCLUDE=GL000207.1,GL000226.1,GL000229.1,GL000231.1,GL000210.1,GL000239.1,GL000235.1,GL000201.1,GL000247.1,GL000245.1,GL000197.1,GL000203.1,GL000246.1,GL000249.1,GL000196.1,GL000248.1,GL000244.1,GL000238.1,GL000202.1,GL000234.1,GL000232.1,GL000206.1,GL000240.1,GL000236.1,GL000241.1,GL000243.1,GL000242.1,GL000230.1,GL000237.1,GL000233.1,GL000204.1,GL000198.1,GL000208.1,GL000191.1,GL000227.1,GL000228.1,GL000214.1,GL000221.1,GL000209.1,GL000218.1,GL000220.1,GL000213.1,GL000211.1,GL000199.1,GL000217.1,GL000216.1,GL000215.1,GL000205.1,GL000219.1,GL000224.1,GL000223.1,GL000195.1,GL000212.1,GL000222.1,GL000200.1,GL000193.1,GL000194.1,GL000225.1,GL000192.1,NC_007605

    whamg -e $EXCLUDE -r chr1:10000000-20000000 -a /reference/GRCh38_full_analysis_set_plus_decoy_hla.fa -f sample.bam | perl ./wham/utils/filtWhamG.pl > output.vcf 2> output.err

    The result is like:

    #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT HG00096 chr1 948662 . C . PASS A=10;CIEND=-10,10;CIPOS=-10,10;CF=0;CW=0,1,0,0,0;D=0;DI=0;END=948730;EV=0;I=0;SR=10;SS=0;SVLEN=68;SVTYPE=DUP;T=0;TAGS=HG00096;TF=0;U=10;V=0 GT:DP:SP .:.:16

    Instead of alt sequences, it gives sv type (). Is this as expected? Is it possible that I can get the alt sequences? Many thanks!

    opened by quentin0515 0
  • Wham installation fails

    Wham installation fails

    I tried to install Whamg on Ubuntu 18.04, I have installed OpenMP and CMake, but when I run

    git clone --recursive  https://github.com/zeeev/wham.git; cd wham; make 
    

    I got:

    [email protected]:/media/mothra/enrico/whamg$ git clone --recursive  https://github.com/zeeev/wham.git; cd wham; make 
    Cloning into 'wham'...
    remote: Enumerating objects: 2958, done.
    remote: Total 2958 (delta 0), reused 0 (delta 0), pack-reused 2958
    Receiving objects: 100% (2958/2958), 95.44 MiB | 11.17 MiB/s, done.
    Resolving deltas: 100% (1922/1922), done.
    Submodule 'src/Complete-Striped-Smith-Waterman-Library' (https://github.com/mengyao/Complete-Striped-Smith-Waterman-Library.git) registered for path 'src/Complete-Striped-Smith-Waterman-Library'
    Submodule 'src/bamtools' (https://github.com/pezmaster31/bamtools.git) registered for path 'src/bamtools'
    Submodule 'src/fastahack' (https://github.com/ekg/fastahack.git) registered for path 'src/fastahack'
    Submodule 'src/seqan' (https://github.com/seqan/seqan.git) registered for path 'src/seqan'
    Cloning into '/media/mothra/enrico/whamg/wham/src/Complete-Striped-Smith-Waterman-Library'...
    remote: Enumerating objects: 9, done.        
    remote: Counting objects: 100% (9/9), done.        
    remote: Compressing objects: 100% (7/7), done.        
    remote: Total 1579 (delta 2), reused 8 (delta 2), pack-reused 1570        
    Receiving objects: 100% (1579/1579), 12.18 MiB | 11.11 MiB/s, done.
    Resolving deltas: 100% (980/980), done.
    Cloning into '/media/mothra/enrico/whamg/wham/src/bamtools'...
    remote: Enumerating objects: 291, done.        
    remote: Counting objects: 100% (291/291), done.        
    remote: Compressing objects: 100% (193/193), done.        
    remote: Total 5148 (delta 176), reused 160 (delta 94), pack-reused 4857        
    Receiving objects: 100% (5148/5148), 6.28 MiB | 10.84 MiB/s, done.
    Resolving deltas: 100% (3549/3549), done.
    Cloning into '/media/mothra/enrico/whamg/wham/src/fastahack'...
    remote: Enumerating objects: 227, done.        
    remote: Total 227 (delta 0), reused 0 (delta 0), pack-reused 227        
    Receiving objects: 100% (227/227), 51.19 KiB | 6.40 MiB/s, done.
    Resolving deltas: 100% (128/128), done.
    Cloning into '/media/mothra/enrico/whamg/wham/src/seqan'...
    remote: Enumerating objects: 82092, done.        
    remote: Total 82092 (delta 0), reused 0 (delta 0), pack-reused 82092        
    Receiving objects: 100% (82092/82092), 148.96 MiB | 11.06 MiB/s, done.
    Resolving deltas: 100% (60918/60918), done.
    Submodule path 'src/Complete-Striped-Smith-Waterman-Library': checked out '8c9933a1685e0ab50c7d8b7926c9068bc0c9d7d2'
    Submodule path 'src/bamtools': checked out '2d7685d2aeedd11c46ad3bd67886d9ed65c30f3e'
    Submodule path 'src/fastahack': checked out '0a8ca3de9239b061839418b306bb6a9072990158'
    Submodule path 'src/seqan': checked out '7f3ca44fbe777f3b637ff57ccc1dcd975cca1661'
    mkdir bin
    cd src/bamtools && mkdir -p build && cd build && cmake .. && make
    -- The C compiler identification is GNU 7.5.0
    -- The CXX compiler identification is GNU 7.5.0
    -- Check for working C compiler: /usr/bin/cc
    -- Check for working C compiler: /usr/bin/cc -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Check for working CXX compiler: /usr/bin/c++
    -- Check for working CXX compiler: /usr/bin/c++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /media/mothra/enrico/whamg/wham/src/bamtools/build
    make[1]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[2]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target SharedHeaders
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [  0%] Built target SharedHeaders
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target BamTools-static
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [  1%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/BamAlignment.cpp.o
    [  2%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/BamMultiReader.cpp.o
    [  3%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/BamReader.cpp.o
    [  4%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/BamWriter.cpp.o
    [  5%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/SamHeader.cpp.o
    [  6%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/SamProgram.cpp.o
    [  7%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/SamProgramChain.cpp.o
    [  8%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/SamReadGroup.cpp.o
    [  9%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/SamReadGroupDictionary.cpp.o
    [ 10%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/SamSequence.cpp.o
    [ 11%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/SamSequenceDictionary.cpp.o
    [ 12%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/bam/BamHeader_p.cpp.o
    [ 12%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/bam/BamMultiReader_p.cpp.o
    [ 13%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/bam/BamRandomAccessController_p.cpp.o
    [ 14%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/bam/BamReader_p.cpp.o
    [ 15%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/bam/BamWriter_p.cpp.o
    [ 16%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/index/BamIndexFactory_p.cpp.o
    [ 17%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/index/BamStandardIndex_p.cpp.o
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/index/BamStandardIndex_p.cpp: In member function ‘void BamTools::Internal::BamStandardIndex::WriteLinearOffsets(const int&, BamTools::Internal::BaiLinearOffsetVector&)’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/index/BamStandardIndex_p.cpp:958:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if ( numBytesWritten != (sizeof(offsetCount) + linearOffsets.size()*sizeof(uint64_t)) )
              ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    [ 18%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/index/BamToolsIndex_p.cpp.o
    [ 19%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/BamDeviceFactory_p.cpp.o
    [ 20%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/BamFile_p.cpp.o
    [ 21%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/BamFtp_p.cpp.o
    [ 22%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/BamHttp_p.cpp.o
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp: In member function ‘bool BamTools::Internal::BamHttp::SendGetRequest(size_t)’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp:409:59: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if ( WriteToSocket(requestHeader.c_str(), headerSize) != headerSize ) {
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp: In member function ‘bool BamTools::Internal::BamHttp::SendHeadRequest()’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp:501:59: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if ( WriteToSocket(requestHeader.c_str(), headerSize) != headerSize ) {
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
    [ 23%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/BamPipe_p.cpp.o
    [ 24%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/BgzfStream_p.cpp.o
    [ 25%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/ByteArray_p.cpp.o
    [ 26%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/HostAddress_p.cpp.o
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp: In member function ‘bool BamTools::Internal::HostAddress::operator<(const BamTools::Internal::HostAddress&) const’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp:266:33: warning: self-comparison always evaluates to false [-Wtautological-compare]
                 return m_ip4Address < m_ip4Address;
                        ~~~~~~~~~~~~~^~~~~~~~~~~~~~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp: In member function ‘std::__cxx11::string BamTools::Internal::HostAddress::GetIPString() const’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp:325:13: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
                 if ( i != 0 )
                 ^~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp:327:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
                     ss << hex << ( (uint16_t(m_ip6Address[2*i]) << 8) |
                     ^~
    [ 27%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/HostInfo_p.cpp.o
    [ 28%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/HttpHeader_p.cpp.o
    [ 29%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/ILocalIODevice_p.cpp.o
    [ 30%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/RollingBuffer_p.cpp.o
    [ 31%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/TcpSocket_p.cpp.o
    [ 32%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/TcpSocketEngine_p.cpp.o
    [ 33%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/io/TcpSocketEngine_unix_p.cpp.o
    [ 34%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/sam/SamFormatParser_p.cpp.o
    [ 35%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/sam/SamFormatPrinter_p.cpp.o
    [ 36%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/sam/SamHeaderValidator_p.cpp.o
    [ 37%] Building CXX object src/api/CMakeFiles/BamTools-static.dir/internal/utils/BamException_p.cpp.o
    [ 38%] Linking CXX static library ../../../lib/libbamtools.a
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 38%] Built target BamTools-static
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target BamTools
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 38%] Building CXX object src/api/CMakeFiles/BamTools.dir/BamAlignment.cpp.o
    [ 39%] Building CXX object src/api/CMakeFiles/BamTools.dir/BamMultiReader.cpp.o
    [ 40%] Building CXX object src/api/CMakeFiles/BamTools.dir/BamReader.cpp.o
    [ 41%] Building CXX object src/api/CMakeFiles/BamTools.dir/BamWriter.cpp.o
    [ 42%] Building CXX object src/api/CMakeFiles/BamTools.dir/SamHeader.cpp.o
    [ 43%] Building CXX object src/api/CMakeFiles/BamTools.dir/SamProgram.cpp.o
    [ 44%] Building CXX object src/api/CMakeFiles/BamTools.dir/SamProgramChain.cpp.o
    [ 45%] Building CXX object src/api/CMakeFiles/BamTools.dir/SamReadGroup.cpp.o
    [ 46%] Building CXX object src/api/CMakeFiles/BamTools.dir/SamReadGroupDictionary.cpp.o
    [ 47%] Building CXX object src/api/CMakeFiles/BamTools.dir/SamSequence.cpp.o
    [ 48%] Building CXX object src/api/CMakeFiles/BamTools.dir/SamSequenceDictionary.cpp.o
    [ 49%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/bam/BamHeader_p.cpp.o
    [ 50%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/bam/BamMultiReader_p.cpp.o
    [ 51%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/bam/BamRandomAccessController_p.cpp.o
    [ 52%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/bam/BamReader_p.cpp.o
    [ 53%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/bam/BamWriter_p.cpp.o
    [ 54%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/index/BamIndexFactory_p.cpp.o
    [ 55%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/index/BamStandardIndex_p.cpp.o
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/index/BamStandardIndex_p.cpp: In member function ‘void BamTools::Internal::BamStandardIndex::WriteLinearOffsets(const int&, BamTools::Internal::BaiLinearOffsetVector&)’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/index/BamStandardIndex_p.cpp:958:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if ( numBytesWritten != (sizeof(offsetCount) + linearOffsets.size()*sizeof(uint64_t)) )
              ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    [ 56%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/index/BamToolsIndex_p.cpp.o
    [ 57%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/BamDeviceFactory_p.cpp.o
    [ 58%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/BamFile_p.cpp.o
    [ 59%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/BamFtp_p.cpp.o
    [ 60%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/BamHttp_p.cpp.o
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp: In member function ‘bool BamTools::Internal::BamHttp::SendGetRequest(size_t)’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp:409:59: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if ( WriteToSocket(requestHeader.c_str(), headerSize) != headerSize ) {
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp: In member function ‘bool BamTools::Internal::BamHttp::SendHeadRequest()’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/BamHttp_p.cpp:501:59: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if ( WriteToSocket(requestHeader.c_str(), headerSize) != headerSize ) {
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
    [ 61%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/BamPipe_p.cpp.o
    [ 62%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/BgzfStream_p.cpp.o
    [ 63%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/ByteArray_p.cpp.o
    [ 64%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/HostAddress_p.cpp.o
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp: In member function ‘bool BamTools::Internal::HostAddress::operator<(const BamTools::Internal::HostAddress&) const’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp:266:33: warning: self-comparison always evaluates to false [-Wtautological-compare]
                 return m_ip4Address < m_ip4Address;
                        ~~~~~~~~~~~~~^~~~~~~~~~~~~~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp: In member function ‘std::__cxx11::string BamTools::Internal::HostAddress::GetIPString() const’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp:325:13: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
                 if ( i != 0 )
                 ^~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/api/internal/io/HostAddress_p.cpp:327:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
                     ss << hex << ( (uint16_t(m_ip6Address[2*i]) << 8) |
                     ^~
    [ 65%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/HostInfo_p.cpp.o
    [ 66%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/HttpHeader_p.cpp.o
    [ 67%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/ILocalIODevice_p.cpp.o
    [ 68%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/RollingBuffer_p.cpp.o
    [ 69%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/TcpSocket_p.cpp.o
    [ 70%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/TcpSocketEngine_p.cpp.o
    [ 71%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/io/TcpSocketEngine_unix_p.cpp.o
    [ 72%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/sam/SamFormatParser_p.cpp.o
    [ 73%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/sam/SamFormatPrinter_p.cpp.o
    [ 74%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/sam/SamHeaderValidator_p.cpp.o
    [ 75%] Building CXX object src/api/CMakeFiles/BamTools.dir/internal/utils/BamException_p.cpp.o
    [ 76%] Linking CXX shared library ../../../lib/libbamtools.so
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 76%] Built target BamTools
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target APIHeaders
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 76%] Built target APIHeaders
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target AlgorithmsHeaders
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 76%] Built target AlgorithmsHeaders
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target jsoncpp
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 77%] Building CXX object src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/json_reader.cpp.o
    [ 78%] Building CXX object src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/json_value.cpp.o
    [ 79%] Building CXX object src/third_party/jsoncpp/CMakeFiles/jsoncpp.dir/json_writer.cpp.o
    [ 80%] Linking CXX static library ../../../../lib/libjsoncpp.a
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 80%] Built target jsoncpp
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target BamTools-utils
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 81%] Building CXX object src/utils/CMakeFiles/BamTools-utils.dir/bamtools_fasta.cpp.o
    [ 82%] Building CXX object src/utils/CMakeFiles/BamTools-utils.dir/bamtools_options.cpp.o
    [ 83%] Building CXX object src/utils/CMakeFiles/BamTools-utils.dir/bamtools_pileup_engine.cpp.o
    [ 84%] Building CXX object src/utils/CMakeFiles/BamTools-utils.dir/bamtools_utilities.cpp.o
    [ 85%] Linking CXX static library ../../../lib/libbamtools-utils.a
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 85%] Built target BamTools-utils
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Scanning dependencies of target bamtools_cmd
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    make[3]: Entering directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    [ 86%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_convert.cpp.o
    [ 87%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_count.cpp.o
    [ 88%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_coverage.cpp.o
    [ 89%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_filter.cpp.o
    [ 90%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_header.cpp.o
    [ 91%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_index.cpp.o
    [ 92%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_merge.cpp.o
    [ 93%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_random.cpp.o
    [ 94%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘bool BamTools::ResolveTool::ReadNamesFileReader::Read(std::map<std::__cxx11::basic_string<char>, ReadGroupResolver>&)’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:415:74: error: no matching function for call to ‘make_pair<std::__cxx11::string, bool>(__gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::basic_string<char> > >::value_type&, bool)’
             resolver.ReadNames.insert( make_pair<string,bool>(fields[1], true) ) ;
                                                                              ^
    In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
                     from /usr/include/c++/7/bits/char_traits.h:39,
                     from /usr/include/c++/7/string:40,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_tool.h:14,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.h:13,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:10:
    /usr/include/c++/7/bits/stl_pair.h:524:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::__decay_and_strip<_Tp>::__type, typename std::__decay_and_strip<_T2>::__type> std::make_pair(_T1&&, _T2&&)
         make_pair(_T1&& __x, _T2&& __y)
         ^~~~~~~~~
    /usr/include/c++/7/bits/stl_pair.h:524:5: note:   template argument deduction/substitution failed:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:415:74: note:   cannot convert ‘fields.std::vector<std::__cxx11::basic_string<char> >::operator[](1)’ (type ‘__gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::basic_string<char> > >::value_type {aka std::__cxx11::basic_string<char>}’) to type ‘std::__cxx11::basic_string<char>&&’
             resolver.ReadNames.insert( make_pair<string,bool>(fields[1], true) ) ;
                                                                              ^
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘bool BamTools::ResolveTool::StatsFileReader::ParseReadGroupLine(const string&, std::map<std::__cxx11::basic_string<char>, ReadGroupResolver>&)’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:612:75: error: no matching function for call to ‘make_pair<std::__cxx11::string, ReadGroupResolver>(const string&, ReadGroupResolver&)’
         readGroups.insert( make_pair<string, ReadGroupResolver>(name, resolver) );
                                                                               ^
    In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
                     from /usr/include/c++/7/bits/char_traits.h:39,
                     from /usr/include/c++/7/string:40,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_tool.h:14,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.h:13,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:10:
    /usr/include/c++/7/bits/stl_pair.h:524:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::__decay_and_strip<_Tp>::__type, typename std::__decay_and_strip<_T2>::__type> std::make_pair(_T1&&, _T2&&)
         make_pair(_T1&& __x, _T2&& __y)
         ^~~~~~~~~
    /usr/include/c++/7/bits/stl_pair.h:524:5: note:   template argument deduction/substitution failed:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:612:61: note:   cannot convert ‘name’ (type ‘const string {aka const std::__cxx11::basic_string<char>}’) to type ‘std::__cxx11::basic_string<char>&&’
         readGroups.insert( make_pair<string, ReadGroupResolver>(name, resolver) );
                                                                 ^~~~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘bool BamTools::ResolveTool::ResolveToolPrivate::MakeStats()’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:1019:93: error: no matching function for call to ‘make_pair<std::__cxx11::string, bool>(std::__cxx11::string&, const bool&)’
             else resolver.ReadNames.insert( make_pair<string, bool>(al.Name, isCurrentMateUnique) );
                                                                                                 ^
    In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
                     from /usr/include/c++/7/bits/char_traits.h:39,
                     from /usr/include/c++/7/string:40,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_tool.h:14,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.h:13,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:10:
    /usr/include/c++/7/bits/stl_pair.h:524:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::__decay_and_strip<_Tp>::__type, typename std::__decay_and_strip<_T2>::__type> std::make_pair(_T1&&, _T2&&)
         make_pair(_T1&& __x, _T2&& __y)
         ^~~~~~~~~
    /usr/include/c++/7/bits/stl_pair.h:524:5: note:   template argument deduction/substitution failed:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:1019:68: note:   cannot convert ‘al.BamTools::BamAlignment::Name’ (type ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’) to type ‘std::__cxx11::basic_string<char>&&’
             else resolver.ReadNames.insert( make_pair<string, bool>(al.Name, isCurrentMateUnique) );
                                                                     ~~~^~~~
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘void BamTools::ResolveTool::ResolveToolPrivate::ParseHeader(const BamTools::SamHeader&)’:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:1051:93: error: no matching function for call to ‘make_pair<std::__cxx11::string, ReadGroupResolver>(const string&, ReadGroupResolver)’
             m_readGroups.insert( make_pair<string, ReadGroupResolver>(rg.ID, ReadGroupResolver()) );
                                                                                                 ^
    In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
                     from /usr/include/c++/7/bits/char_traits.h:39,
                     from /usr/include/c++/7/string:40,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_tool.h:14,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.h:13,
                     from /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:10:
    /usr/include/c++/7/bits/stl_pair.h:524:5: note: candidate: template<class _T1, class _T2> constexpr std::pair<typename std::__decay_and_strip<_Tp>::__type, typename std::__decay_and_strip<_T2>::__type> std::make_pair(_T1&&, _T2&&)
         make_pair(_T1&& __x, _T2&& __y)
         ^~~~~~~~~
    /usr/include/c++/7/bits/stl_pair.h:524:5: note:   template argument deduction/substitution failed:
    /media/mothra/enrico/whamg/wham/src/bamtools/src/toolkit/bamtools_resolve.cpp:1051:70: note:   cannot convert ‘rg.BamTools::SamReadGroup::ID’ (type ‘const string {aka const std::__cxx11::basic_string<char>}’) to type ‘std::__cxx11::basic_string<char>&&’
             m_readGroups.insert( make_pair<string, ReadGroupResolver>(rg.ID, ReadGroupResolver()) );
                                                                       ~~~^~
    src/toolkit/CMakeFiles/bamtools_cmd.dir/build.make:254: recipe for target 'src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o' failed
    make[3]: *** [src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o] Error 1
    make[3]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    CMakeFiles/Makefile2:520: recipe for target 'src/toolkit/CMakeFiles/bamtools_cmd.dir/all' failed
    make[2]: *** [src/toolkit/CMakeFiles/bamtools_cmd.dir/all] Error 2
    make[2]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Makefile:129: recipe for target 'all' failed
    make[1]: *** [all] Error 2
    make[1]: Leaving directory '/media/mothra/enrico/whamg/wham/src/bamtools/build'
    Makefile:26: recipe for target 'src/bamtools/lib/libbamtools.a' failed
    make: *** [src/bamtools/lib/libbamtools.a] Error 2
    

    Thank you in advance for any help!

    opened by cccnrc 2
  • error: INFO: processed 0 reads for BAM file

    error: INFO: processed 0 reads for BAM file

    I am struggling having Whamg running for a WGS .bam file. I used GATKSV/Wham docker image and the following command:

    whamg \
        -c ${chr_list} \
        -x 30 \
        -a ${reference_fasta} \
        -f ${bam_file}
    

    Returns:

    Invoking whamg: whamg -c /var/lib/cwl/stg5910348b-6df0-43de-baff-568ee78530fc/hg38.primary_contig.csv -x 30 -a /var/lib/cwl/stg85dd1661-e28a-42b5-a410-ee90e45240cc/Homo_sapiens_assembly38.fasta -f /var/lib/cwl/stg80c5a3ef-bc35-40ce-9482-f42a56486e04/DAKIKI.sorted.markup.bam

    INFO: WHAM will analyze seqid: /var/lib/cwl/stg5910348b-6df0-43de-baff-568ee78530fc/hg38.primary_contig.csv INFO: OpenMP will roughly use 30 threads INFO: fasta file: /var/lib/cwl/stg85dd1661-e28a-42b5-a410-ee90e45240cc/Homo_sapiens_assembly38.fasta INFO: target bams: /var/lib/cwl/stg80c5a3ef-bc35-40ce-9482-f42a56486e04/DAKIKI.sorted.markup.bam INFO: gathering stats (may take some time) for bam: /var/lib/cwl/stg80c5a3ef-bc35-40ce-9482-f42a56486e04/DAKIKI.sorted.markup.bam INFO: processed 0 reads for: /var/lib/cwl/stg80c5a3ef-bc35-40ce-9482-f42a56486e04/DAKIKI.sorted.markup.bam

    and nothing else. I also tried to reconvert the .bam to .fastq and realign with BWA-MEM:

    bedtools bamtofastq -i DAKIKI.final.sorted.bam -fq DAKIKI.final.sorted.fq
    bwa mem -t 30 -R "@RG\tID:DAKIKI\tSM:DAKIKI" \
              /media/kong/enrico/fasta_X01_hg38/Homo_sapiens_assembly38.fasta \
              /media/kong/enrico/wgs_cnv/DAKIKI.final.sorted.fq \
                   > /media/kong/enrico/wgs_cnv/DAKIKI.sam
    samtools view [email protected] 30 -F 4 -S -b -h /media/kong/enrico/wgs_cnv/DAKIKI.sam > /media/kong/enrico/wgs_cnv/DAKIKI.bam
    samtools sort [email protected] 30 -n  /media/kong/enrico/wgs_cnv/DAKIKI.bam -o  /media/kong/enrico/wgs_cnv/DAKIKI.sorted.bam
    samtools fixmate [email protected] 30 -m /media/kong/enrico/wgs_cnv/DAKIKI.sorted.bam /media/kong/enrico/wgs_cnv/DAKIKI.fixmate.bam > /media/kong/enrico/wgs_cnv/DAKIKI_fixmate.out 
    samtools sort [email protected] 30 /media/kong/enrico/wgs_cnv/DAKIKI.fixmate.bam -o /media/kong/enrico/wgs_cnv/DAKIKI.fixmate.sorted.bam
    samtools markdup [email protected] 30 -r -s /media/kong/enrico/wgs_cnv/DAKIKI.fixmate.sorted.bam /media/kong/enrico/wgs_cnv/DAKIKI.sorted.markup.bam 
    samtools index [email protected] 30 /media/kong/enrico/wgs_cnv/DAKIKI.sorted.markup.bam
    
    

    but nothing works, keep getting the same output.

    Thank you in advance for any help!

    opened by cccnrc 3
  • installation fails

    installation fails

    i get install by this Fast and dirty install: git clone --recursive https://github.com/zeeev/wham.git cd wham make and i get this problem: `g++ -fstack-protector-all -Wall -DVERSION="v1.7.0-311-g4e8c-dirty" -std=c++0x -Wno-sign-compare -O3 -Isrc/lib -Isrc/bamtools/include -Isrc/bamtools/src -Isrc/ -Isrc/fastahack -Isrc/Complete-Striped-Smith-Waterman-Library/src/ src/bin/whamg.cpp src/bamtools/lib/libbamtools.a src/obj/entropy.o src/obj/split.o src/obj/read_pileup.o src/obj/readPileUp.o src/obj/flag.o src/fastahack/Fasta.o src/Complete-Striped-Smith-Waterman-Library/src/ssw_cpp.o src/Complete-Striped-Smith-Waterman-Library/src/ssw.o -o bin/whamg -fopenmp -lz -lm src/bin/whamg.cpp: In function ‘void findPairs(std::vector<node*>&, breakpoint*, std::map<int, std::map<int, breakpoint*> >&)’: src/bin/whamg.cpp:1706:9: warning: variable ‘lmax’ set but not used [-Wunused-but-set-variable] int lmax = 0; ^~~~ src/bin/whamg.cpp:1707:9: warning: variable ‘rmax’ set but not used [-Wunused-but-set-variable] int rmax = 0; ^~~~ src/bin/whamg.cpp:1709:9: warning: variable ‘edsn’ set but not used [-Wunused-but-set-variable] int edsn = 0;

         ^~~~
    

    /var/tmp/ccBfD5UZ.o: In function _ZNK8BamTools12BamAlignment6GetTagINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEbRKS7_RT_.part.23': whamg.cpp:(.text+0x73): undefined reference toBamTools::BamAlignment::FindTag(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, char*&, unsigned int const&, unsigned int&) const' /var/tmp/ccBfD5UZ.o: In function loadBam(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)': whamg.cpp:(.text+0x4d7f): undefined reference toBamTools::BamReader::Open(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)' whamg.cpp:(.text+0x4ec2): undefined reference to BamTools::BamReader::OpenIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /var/tmp/ccBfD5UZ.o: In functiongatherBamStats(std::__cxx11::basic_string<char, std::char_traits, std::allocator >&)': whamg.cpp:(.text+0x9ac5): undefined reference to BamTools::BamReader::Open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' whamg.cpp:(.text+0x9bbc): undefined reference toBamTools::BamReader::OpenIndex(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)' /var/tmp/ccBfD5UZ.o: In function runRegion(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, int, int, std::vector<BamTools::RefData, std::allocator<BamTools::RefData> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)': whamg.cpp:(.text+0xd388): undefined reference toBamTools::BamReader::Open(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)' whamg.cpp:(.text+0xd461): undefined reference to BamTools::BamReader::OpenIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /var/tmp/ccBfD5UZ.o: In functionmain': whamg.cpp:(.text.startup+0xca): undefined reference to BamTools::BamMultiReader::Open(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)' src/obj/readPileUp.o: In functionreadPileUp::processPileup(long*)': readPileUp.cpp:(.text+0x30c4): undefined reference to BamTools::BamAlignment::FindTag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char*&, unsigned int const&, unsigned int&) const' collect2: error: ld returned 1 exit status make: *** [Makefile:38: bin/whamg] Error 1

    i already have all you require: gcc (GCC) 7.2.0 cmake version 3.16.0 pip install -U numpy scipy scikit-learn argparse Requirement already up-to-date: numpy in (1.16.6) Requirement already up-to-date: scipy in (1.2.2) Requirement already up-to-date: scikit-learn in (0.20.4) Requirement already up-to-date: argparse in (1.4.0) and i also try to install bamtools by anaconda in python2.7 and python3.7 env. please help me.

    opened by masen0407 0
Releases(1.8.0)
Owner
Zev Kronenberg
Zev Kronenberg
Chaste - Cancer Heart And Soft Tissue Environment - main public repository

Chaste - Cancer Heart And Soft Tissue Environment - main public repository

Chaste - Cancer Heart and Soft Tissue Environment 98 Dec 14, 2022
Public/backup repository of the GROMACS molecular simulation toolkit. Please do not mine the metadata blindly; we use https://gitlab.com/gromacs/gromacs for code review and issue tracking.

Welcome to the official version of GROMACS! If you are familiar with Unix, it should be fairly trivial to compile and install GROMACS. GROMACS uses o

Gromacs 487 Jan 7, 2023
variant lite - A C++17-like variant, a type-safe union for C++98, C++11 and later in a single-file header-only library

variant lite: A single-file header-only version of a C++17-like variant, a type-safe union for C++98, C++11 and later Contents Example usage In a nuts

Martin Moene 225 Dec 29, 2022
Recursive Variant: A simple library for Recursive Variant Types

rva::variant — Recursive Sum Types for C++ Provided by the Recursive Variant Authority. We stand united in opposition to the TVA. May your variants ne

Alecto Irene Perez 65 Dec 17, 2022
Variant - C++17 `std::variant` for C++11/14/17

MPark.Variant C++17 std::variant for C++11/14/17 Introduction MPark.Variant is an implementation of C++17 std::variant for C++11/14/17. Based on my im

Michael Park 577 Jan 3, 2023
A RGB-D SLAM system for structural scenes, which makes use of point-line-plane features and the Manhattan World assumption.

This repo proposes a RGB-D SLAM system specifically designed for structured environments and aimed at improved tracking and mapping accuracy by relying on geometric features that are extracted from the surrounding.

Yanyan Li 269 Jan 2, 2023
Open source codebase in association with hacktoberfest 2021

Hacktoberfest 2021 Open source codebase in association with hacktoberfest 2021 About What is Hacktoberfest? Hacktoberfest, in its 8th year, is a month

Google Developer Student Clubs MBCET 6 Aug 29, 2022
C++ Type Traits for Smart Pointers that are not included in the standard library, containing inheritance detection and member detection.

Smart Pointer Type Trait ?? A simple, header-only cpp library implementing smart pointer type traits. You can easily compile your code diffrently depe

Woon2 12 Sep 14, 2022
The C Unit Testing Library on GitHub is a library designed for easy unit testing in C

The C Unit Testing Library on GitHub is a library designed for easy unit testing in C. It was written by Brennan Hurst for the purpose of providing a J-Unit-like testing framework within C for personal projects.

null 1 Oct 11, 2021
C++ Unit Testing Easier: A Header-only C++ unit testing framework

CUTE C++ Unit Testing Easier: A Header-only C++ unit testing framework usually available as part of the Cevelop C++ IDE (http://cevelop.com) Dependenc

Peter Sommerlad 36 Dec 26, 2022
An open source library for face detection in images. The face detection speed can reach 1000FPS.

libfacedetection This is an open source library for CNN-based face detection in images. The CNN model has been converted to static variables in C sour

Shiqi Yu 11.4k Jan 8, 2023
Canny edge detection, one of the efficient edge detection algorithms is implemented on a Zedboard FPGA using verilog

In this project, Canny edge detection, one of the efficient edge detection algorithms is implemented on a Zedboard FPGA using verilog. The input image is stored on a PC and fed to the FPGA. The output processed image is displayed on a VGA monitor.

Jeffrey Samuel 4 Jan 4, 2023
A cleaner and more intuitive std::variant alternative

[WIP] ExtendedVariant This single header library is part of my C++ extended standard stdex libraries. Check our my profile for more. Working with C++

pinsrq 3 Jun 13, 2021
A modern, C++11-native, single-file header-only, tiny framework for unit-tests, TDD and BDD (includes C++98 variant)

lest – lest errors escape testing This tiny C++11 test framework is based on ideas and examples by Kevlin Henney [1,2] and on ideas found in the CATCH

Martin Moene 355 Dec 28, 2022
A realtime/embedded-friendly C++11 variant type which is never empty and prevents undesirable implicit conversions

strict variant Do you use boost::variant or one of the many open-source C++11 implementations of a "tagged union" or variant type in your C++ projects

Chris Beck 90 Oct 10, 2022
high performance C++20 implementation of std::variant

A minimal compile-time overhead, C++20 implementation of std::variant. Fully standard conforming with a couple of documented differences.

null 37 Nov 22, 2022
Eggs.Variant is a C++11/14/17 generic, type-safe, discriminated union.

Eggs.Variant Introduction Eggs.Variant is a C++11/14/17 generic, type-safe, discriminated union. See the documentation at http://eggs-cpp.github.io/va

null 138 Dec 3, 2022
A wrapper around std::variant with some helper functions

A wrapper around std::variant with some helper functions

Eyal Amir 1 Oct 30, 2021
EDK2 port for Lumia 630 & it's 512mb variants. 1gb variant coming soon.

Lumia930Pkg WIP Custom ARM UEFI firmware for Lumia930 Current Status EMMC MMU PMIC GPIO Working Linux Notes Linux kernel do boots but crashes pretty s

Fiery 0 Jan 2, 2022