I am on a Linux fedora system and I am trying to compile iSMC, but I get following error:
cmake -DCMAKE_INSTALL_PREFIX=$HOME/.local -DBUILD_STATIC=ON
CMake Warning:
No source or binary directory provided. Both will be assumed to be the
same as the current working directory, but note that this warning will
become a fatal error in future CMake releases.
-- Static linkage requested.
-- bpp-core3 1.0.0 found:
-- static lib: /home/lukas/.local/lib64/libbpp-core3.a
-- shared lib: /home/lukas/.local/lib64/libbpp-core3.so.1.0.0
-- includes: /home/lukas/.local/include
-- bpp-seq3 1.0.0 found:
-- static lib: /home/lukas/.local/lib64/libbpp-seq3.a
-- shared lib: /home/lukas/.local/lib64/libbpp-seq3.so.1.0.0
-- includes: /home/lukas/.local/include
-- bpp-phyl3 1.0.0 found:
-- static lib: /home/lukas/.local/lib64/libbpp-phyl3.a
-- shared lib: /home/lukas/.local/lib64/libbpp-phyl3.so.1.0.0
-- includes: /home/lukas/.local/include
-- simpleziphmm 1.0.0 found:
-- static lib: /usr/local/lib64/libsimpleziphmm.a
-- shared lib: /usr/local/lib64/libsimpleziphmm.so.1.0.0
-- includes: /usr/local/include
-- Found Boost: /usr/local/lib/cmake/Boost-1.82.0/BoostConfig.cmake (found suitable version "1.82.0", minimum required is "1.36.0") found components: iostreams
-- Boost libraries found here:
includes: /usr/local/include
dynamic libraries: Boost::iostreams
-- Library z found here:
includes: /usr/include
static libraries: /usr/local/lib/libz.a
-- Library bz2 found here:
includes: /usr/include
static libraries: /usr/local/lib/libbz2.a
-- Library blas found here:
includes: /usr/include
static libraries: /usr/local/lib/libblas.a
-- Configuring done (0.1s)
-- Generating done (0.0s)
-- Build files have been written to: /home/lukas/Downloads/iSMC-master
[lukas@localhost iSMC-master]$ make
[ 3%] Building CXX object src/CMakeFiles/ismc.dir/AbstractParametrizedMatrix.cpp.o
[ 6%] Building CXX object src/CMakeFiles/ismc.dir/BackupListenerOv.cpp.o
[ 10%] Building CXX object src/CMakeFiles/ismc.dir/BaumWelch.cpp.o
[ 13%] Building CXX object src/CMakeFiles/ismc.dir/HmmStatesLibrary.cpp.o
[ 17%] Building CXX object src/CMakeFiles/ismc.dir/MarkovModulatedSmc.cpp.o
[ 20%] Building CXX object src/CMakeFiles/ismc.dir/MatrixOptimizationFunction.cpp.o
[ 24%] Building CXX object src/CMakeFiles/ismc.dir/MmPsmc.cpp.o
[ 27%] Building CXX object src/CMakeFiles/ismc.dir/MmSmcEmissionProbabilities.cpp.o
[ 31%] Building CXX object src/CMakeFiles/ismc.dir/MmSmcTransitionProbabilities.cpp.o
[ 34%] Building CXX object src/CMakeFiles/ismc.dir/MultipleMmPsmc.cpp.o
[ 37%] Building CXX object src/CMakeFiles/ismc.dir/ParameterCategoryTransitions.cpp.o
[ 41%] Building CXX object src/CMakeFiles/ismc.dir/PolymorphismData.cpp.o
/home/lukas/Downloads/iSMC-master/src/PolymorphismData.cpp: In member function ‘void PolymorphismData::callSnpsFromSnpFile(boost::iostreams::filtering_istream&)’:
/home/lukas/Downloads/iSMC-master/src/PolymorphismData.cpp:205:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
205 | else
| ^~~~
/home/lukas/Downloads/iSMC-master/src/PolymorphismData.cpp:208:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
208 | ++diploidIndex;
| ^~
[ 44%] Building CXX object src/CMakeFiles/ismc.dir/Psmc.cpp.o
[ 48%] Building CXX object src/CMakeFiles/ismc.dir/RelativeStopCondition.cpp.o
[ 51%] Building CXX object src/CMakeFiles/ismc.dir/SequentiallyMarkovCoalescent.cpp.o
/home/lukas/Downloads/iSMC-master/src/SequentiallyMarkovCoalescent.cpp: In member function ‘double SequentiallyMarkovCoalescent::fetchBiHaploidTheta_(const std::vector<unsigned char>&)’:
/home/lukas/Downloads/iSMC-master/src/SequentiallyMarkovCoalescent.cpp:246:24: warning: conversion from ‘size_t’ {aka ‘long unsigned int’} to ‘double’ may change value [-Wconversion]
246 | return polymorphic / callable;
| ^~~~~~~~
[ 55%] Building CXX object src/CMakeFiles/ismc.dir/SmcDecodingWrapper.cpp.o
[ 58%] Building CXX object src/CMakeFiles/ismc.dir/SmcEmissionProbabilities.cpp.o
[ 62%] Building CXX object src/CMakeFiles/ismc.dir/SmcOptimizationWrapper.cpp.o
[ 65%] Building CXX object src/CMakeFiles/ismc.dir/SmcTransitionProbabilities.cpp.o
[ 68%] Building CXX object src/CMakeFiles/ismc.dir/Splines.cpp.o
[ 72%] Building CXX object src/CMakeFiles/ismc.dir/SplinesModel.cpp.o
[ 75%] Building CXX object src/CMakeFiles/ismc.dir/Vcf.cpp.o
[ 79%] Building CXX object src/CMakeFiles/ismc.dir/Global.cpp.o
[ 82%] Building CXX object src/CMakeFiles/ismc.dir/ismc.cpp.o
[ 86%] Linking CXX executable ismc
/usr/bin/ld: cannot find -llzma: No such file or directory
/usr/bin/ld: cannot find -lstdc++: No such file or directory
/usr/bin/ld: cannot find -lm: No such file or directory
/usr/bin/ld: cannot find -lc: No such file or directory
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/ismc.dir/build.make:475: src/ismc] Error 1
make[1]: *** [CMakeFiles/Makefile2:129: src/CMakeFiles/ismc.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
Obviously it cannot find the libraries there. But I have no idea how to fix this issue actually. Do you have an idea?
Thank you very much in advance for helping me.
Hi,
I am on a Linux fedora system and I am trying to compile iSMC, but I get following error:
Obviously it cannot find the libraries there. But I have no idea how to fix this issue actually. Do you have an idea? Thank you very much in advance for helping me.