ssadedin / ximmer

Ximmer is a system for CNV calling on exome and targeted genomic sequencing
http://ssadedin.github.io/ximmer/
GNU Lesser General Public License v2.1
19 stars 10 forks source link

Error at install #16

Open gybeata opened 6 years ago

gybeata commented 6 years ago

Hello,

I am having a hard time installing xhmm within ximmer. This is the error I am getting:

g++ -c -Wall -Werror -O3  -I./sources/include  sources/lib/MatrixDecomp.cpp -o build/lib/MatrixDecomp.o
In file included from sources/lib/MatrixDecomp.cpp:3:0:
./sources/include/VectorOnDisk.hpp: In instantiation of 'HMM_PP::VectorOnDisk<dataType>::~VectorOnDisk() [with dataType = double]':
sources/lib/MatrixDecomp.cpp:75:1:   required from here
./sources/include/VectorOnDisk.hpp:91:37: error: throw will always call terminate() [-Werror=terminate]
        throw new Exception(str.str());
                                     ^
./sources/include/VectorOnDisk.hpp:91:37: note: in C++11 destructors default to noexcept
cc1plus: all warnings being treated as errors

Do you have any idea where to look for the source of the error? I was not able to find any useful solution so far.

Thank you

SafinaAr commented 6 years ago

im having the same error this error is particular to xhmm tool

ssadedin commented 6 years ago

Hmm, this looks like a problem with the XHMM source code (which is quite old) under newer versions of GCC. One solution might be to use an older version of GCC. I will do some experimentation to see if a simple patch to the build file can solve it with newer versions.

ssadedin commented 6 years ago

I've just pushed what I hope might be a fix for this. If you pull down the latest code and run install process again it will hopefully work. You might need to remove the existing attempt it made at compiling XHMM, eg:

rm -rf eval/pipeline/tools/xhmm

Thanks for reporting the problem and let me know if this helps!

cluhaowie commented 5 years ago

I have accounted the same error here with latest git clone on ubuntu server 18.04LTS. Here is the gcc version 7.3.0 (Ubuntu 7.3.0-27ubuntu1~18.04), and the error message

g++ -c -Wall -Werror -O3  -I./sources/include  sources/lib/MatrixDecomp.cpp -o build/lib/MatrixDecomp.o
In file included from sources/lib/MatrixDecomp.cpp:3:0:
./sources/include/VectorOnDisk.hpp: In instantiation of ‘HMM_PP::VectorOnDisk<dataType>::~VectorOnDisk() [with dataType = double]’:
sources/lib/MatrixDecomp.cpp:75:1:   required from here
./sources/include/VectorOnDisk.hpp:91:37: error: throw will always call terminate() [-Werror=terminate]
        throw new Exception(str.str());
                                     ^
./sources/include/VectorOnDisk.hpp:91:37: note: in C++11 destructors default to noexcept
mcv21 commented 4 years ago

Hi,

FWIW, I sent the XHMM authors a patch to make their code build on C++11 compilers, so if you take master from their git repo, it will now build on 18.04 (and other systems with modern C compilers).