gvbarroso / iSMC

The integrated Sequentially Markovian Coalescent
GNU General Public License v3.0
11 stars 3 forks source link

Compilation error #14

Closed Luker121 closed 1 year ago

Luker121 commented 1 year ago

Hi,

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.