Open dawe opened 3 years ago
@dawe Hi,I have the same problem . Have a try gcc-4.8.5 which support c++11. I have compiled it successfully. good luck!
@dawe @bearwithdog Quite a late reply to the both of you but I am currently working on this project and I fixed this issue that arises with newer G++ versions due to the newer C++ standards. In order to compile with newer G++versions you need to change in the vector_filter.h and popcount.h how the aligned memory is defined. Currently it has the following structure:
#ifndef __aligned__
#define __aligned__ __attribute__((aligned(16)))
#endif
You need to change it to something like this since the double undescore in newer C++ standards is reserved for the compiler's internal use:
#ifndef align_16
#define align_16 __attribute__((aligned(16)))
#endif
Also you will have to change in bwamem.c every instance where memory is aligned to the new definition.
@dawe @bearwithdog Quite a late reply to the both of you but I am currently working on this project and I fixed this issue that arises with newer G++ versions due to the newer C++ standards. In order to compile with newer G++versions you need to change in the vector_filter.h and popcount.h how the aligned memory is defined. Currently it has the following structure:
#ifndef __aligned__
#define __aligned__ __attribute__((aligned(16)))
#endif
You need to change it to something like this since the double undescore in newer C++ standards is reserved for the compiler's internal use:
#ifndef align_16
#define align_16 __attribute__((aligned(16)))
#endif
Also you will have to change in bwamem.c every instance where memory is aligned to the new definition.
After following your instructions, the compilation was successful. However, when I tried to compare it, an error occurred. I have tried multiple times to test it, but still couldn't fix it. Could you please tell me how to fix it? Thank you very much. ./bwa-gasal2 gase_aln -t 4 -l 150 /data/home/cuda/bwa-gasal2/hg19.fasta /data/Sample_D1M1SY03221122MaReCs102BTCF10ZCL_1/D1M1SY03221122MaReCs102BTCF10ZCL_1_S62_R1_001.fastq.gz >t2.log Found 1 GPUs GPU 0: NVIDIA GeForce RTX 3090 Selected device 0 : NVIDIA GeForce RTX 3090 [M::bwa_idx_load_from_disk] read 0 ALT contigs [M::process] read 727274 sequences (40000070 bp)... [M::process] read 727274 sequences (40000070 bp)... [M::mem_process_seqs] Processed 727274 reads in 92.257 CPU sec, 23.689 real sec [M::process] read 727274 sequences (40000070 bp)... [M::mem_process_seqs] Processed 727274 reads in 82.475 CPU sec, 20.498 real sec [M::process] read 727274 sequences (40000070 bp)... bwa-gasal2: src/bwamem.c:2039: mem_aln_t mem_reg2aln(const mem_opt_t, const bntseq_t, const uint8_t, int, const char, const mem_alnreg_t*): Assertion `a.rid == ar->rid' failed. Aborted (core dumped)
@dawe @bearwithdog Quite a late reply to the both of you but I am currently working on this project and I fixed this issue that arises with newer G++ versions due to the newer C++ standards. In order to compile with newer G++versions you need to change in the vector_filter.h and popcount.h how the aligned memory is defined. Currently it has the following structure:
#ifndef __aligned__
#define __aligned__ __attribute__((aligned(16)))
#endif
You need to change it to something like this since the double undescore in newer C++ standards is reserved for the compiler's internal use:#ifndef align_16
#define align_16 __attribute__((aligned(16)))
#endif
Also you will have to change in bwamem.c every instance where memory is aligned to the new definition.After following your instructions, the compilation was successful. However, when I tried to compare it, an error occurred. I have tried multiple times to test it, but still couldn't fix it. Could you please tell me how to fix it? Thank you very much. ./bwa-gasal2 gase_aln -t 4 -l 150 /data/home/cuda/bwa-gasal2/hg19.fasta /data/Sample_D1M1SY03221122MaReCs102BTCF10ZCL_1/D1M1SY03221122MaReCs102BTCF10ZCL_1_S62_R1_001.fastq.gz >t2.log Found 1 GPUs GPU 0: NVIDIA GeForce RTX 3090 Selected device 0 : NVIDIA GeForce RTX 3090 [M::bwa_idx_load_from_disk] read 0 ALT contigs [M::process] read 727274 sequences (40000070 bp)... [M::process] read 727274 sequences (40000070 bp)... [M::mem_process_seqs] Processed 727274 reads in 92.257 CPU sec, 23.689 real sec [M::process] read 727274 sequences (40000070 bp)... [M::mem_process_seqs] Processed 727274 reads in 82.475 CPU sec, 20.498 real sec [M::process] read 727274 sequences (40000070 bp)... bwa-gasal2: src/bwamem.c:2039: mem_aln_t mem_reg2aln(const mem_opt_t, const bntseq_t, const uint8_t, int, const char, const mem_alnreg_t*): Assertion `a.rid == ar->rid' failed. Aborted (core dumped)
I am not sure what this error is I never really encountered it. I only used "left-right-align" branch in my other project and that seemed to work for me.
Hi all, I tried to build bwa-gasal2 on my system but I'm getting errors in the procedure. I cloned the repo, built GASAL2 library for my platform (it seems to work), although I had to substitute this
g++ -std=c++11 -O3 -o test_prog.out -L/usr/local/cuda//targets/x86_64-linux/lib -L../lib test_prog.o -fopenmp -lcudart -lgasal
with this in the Makefile
nvcc -std=c++11 -O3 -o test_prog.out -L/usr/local/cuda//targets/x86_64-linux/lib -L../lib test_prog.o -lgomp -lcudart -lgasal
. Nevertheless, when issuing make at bwa-gasal2 level, I have this error:Here's some system info: