junseonghwan / PhylExAnalysis

BSD 2-Clause "Simplified" License
1 stars 0 forks source link

Error when install the PhyIEx #8

Closed sujunhao closed 1 year ago

sujunhao commented 1 year ago

Hi thanks for developing the tool in Linux, I tried to install the package, but raised the following error:

$ make install
[  2%] Building CXX object src/CMakeFiles/tssb.dir/bulk_datum.cpp.o
[  5%] Building CXX object src/CMakeFiles/tssb.dir/clone_node.cpp.o
In file included from /autofs/bal31/jhsu/home/_env/anaconda3/envs/r4-base/x86_64-conda-linux-gnu/include/c++/9.3.0/bits/locale_facets_nonio.h:39,
                 from /autofs/bal31/jhsu/home/_env/anaconda3/envs/r4-base/x86_64-conda-linux-gnu/include/c++/9.3.0/locale:41,
                 from /home/linuxbrew/.linuxbrew/include/boost/regex/v5/regex_traits_defaults.hpp:30,
                 from /home/linuxbrew/.linuxbrew/include/boost/regex/v5/regex_traits.hpp:26,
                 from /home/linuxbrew/.linuxbrew/include/boost/regex/regex_traits.hpp:30,
                 from /home/linuxbrew/.linuxbrew/include/boost/regex/v5/regex.hpp:31,
                 from /home/linuxbrew/.linuxbrew/include/boost/regex.hpp:34,
                 from /autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.hpp:21,
                 from /autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp:8:
/autofs/bal31/jhsu/home/_env/anaconda3/envs/r4-base/x86_64-conda-linux-gnu/include/c++/9.3.0/ctime:80:11: error: '::timespec_get' has not been declared
   80 |   using ::timespec_get;
      |           ^~~~~~~~~~~~
/autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp: In function 'double ScLikelihoodWithDropout(size_t, const BulkDatum*, const SingleCellData*, bo
ol, const ModelParams&)':
/autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp:692:30: error: 'log' was not declared in this scope; did you mean 'long'?
  692 |         log_lik_biallelic += log(model_params.GetScBiallelicProportion());
      |                              ^~~
      |                              long
/autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp: In function 'double ScLikelihood(size_t, const BulkDatum*, const SingleCellData*, bool, const M
odelParams&)':
/autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp:739:30: error: 'log' was not declared in this scope; did you mean 'long'?
  739 |         log_lik_biallelic += log(1-locus.GetBurstyProbability());
      |                              ^~~
      |                              long
/autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp: In function 'double BulkLogLikWithTotalCopyNumberByRegion(const CloneTreeNode*, const ModelPara
ms&, size_t, size_t, size_t, double)':
/autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp:772:16: error: 'log' was not declared in this scope; did you mean 'long'?
  772 |         return log(gsl_ran_binomial_pdf(var_reads,
      |                ^~~
      |                long
/autofs/bal31/jhsu/home/projects/git/PhylExAnalysis/PhylEx/src/clone_node.cpp:780:29: error: 'log' was not declared in this scope; did you mean 'long'?

How can I fix it, thanks in advance.

sujunhao commented 1 year ago

Hi, I attempted to reinstall all the packages in a Conda environment on Unix without root privileges. However, I'm encountering the following errors even though I have installed the Boost library. Could you please assist me in resolving this installation problem? Thank you in advance.

$ cmake -DCMAKE_INSTALL_PREFIX=$(python -c "import sys; print(sys.prefix)") ../src                                                                                                                                 CMake Warning (dev) in CMakeLists.txt:
  No project() command is present.  The top-level CMakeLists.txt file must
  contain a literal, direct call to the project() command.  Add a line of
  code such as

    project(ProjectName)

  near the top of the file, but after cmake_minimum_required().

  CMake is pretending there is a "project(Project)" command on the first
  line.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- The C compiler identification is GNU 12.3.0
-- The CXX compiler identification is GNU 12.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/x86_64-conda-linux-gnu-cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/x86_64-conda-linux-gnu-c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: /autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/pkg-config (found version "0.29.2") 
-- Found Boost: /autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/include (found suitable version "1.61.0", minimum required is "1.61") found components: regex system filesystem program_options 
-- Found GSL: /autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/include (found version "2.7") 
-- Found OpenMP_C: -fopenmp (found version "4.5") 
-- Found OpenMP_CXX: -fopenmp (found version "4.5") 
-- Found OpenMP: TRUE (found version "4.5")  
CMake Warning (dev) in CMakeLists.txt:
  No cmake_minimum_required command is present.  A line of code such as

    cmake_minimum_required(VERSION 3.25)

  should be added at the top of the file.  The version specified may be lower
  if you wish to support older CMake versions for this project.  For more
  information run "cmake --help-policy CMP0000".
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Configuring done
-- Generating done
-- Build files have been written to: /autofs/bal31/jhsu/home/projects/sc/PhylEx/build
$ make install
[  3%] Building CXX object CMakeFiles/tssb.dir/bulk_datum.o
[  7%] Building CXX object CMakeFiles/tssb.dir/clone_node.o
[ 10%] Building CXX object CMakeFiles/tssb.dir/compact_tssb_state.o
[ 14%] Building CXX object CMakeFiles/tssb.dir/data_util.o
[ 17%] Building CXX object CMakeFiles/tssb.dir/interface.o
[ 21%] Building CXX object CMakeFiles/tssb.dir/loci.o
[ 25%] Building CXX object CMakeFiles/tssb.dir/main.o
[ 28%] Building CXX object CMakeFiles/tssb.dir/model_params.o
[ 32%] Building CXX object CMakeFiles/tssb.dir/numerical_utils.o
[ 35%] Building CXX object CMakeFiles/tssb.dir/sampling_utils.o
[ 39%] Building CXX object CMakeFiles/tssb.dir/single_cell.o
[ 42%] Building CXX object CMakeFiles/tssb.dir/tssb_state.o
[ 46%] Building CXX object CMakeFiles/tssb.dir/utils.o
[ 50%] Linking CXX static library libtssb.a
[ 50%] Built target tssb
[ 53%] Building CXX object CMakeFiles/run.dir/bulk_datum.o
[ 57%] Building CXX object CMakeFiles/run.dir/clone_node.o
[ 60%] Building CXX object CMakeFiles/run.dir/compact_tssb_state.o
[ 64%] Building CXX object CMakeFiles/run.dir/data_util.o
[ 67%] Building CXX object CMakeFiles/run.dir/interface.o
[ 71%] Building CXX object CMakeFiles/run.dir/loci.o
[ 75%] Building CXX object CMakeFiles/run.dir/main.o
[ 78%] Building CXX object CMakeFiles/run.dir/model_params.o
[ 82%] Building CXX object CMakeFiles/run.dir/numerical_utils.o
[ 85%] Building CXX object CMakeFiles/run.dir/sampling_utils.o
[ 89%] Building CXX object CMakeFiles/run.dir/single_cell.o
[ 92%] Building CXX object CMakeFiles/run.dir/tssb_state.o
[ 96%] Building CXX object CMakeFiles/run.dir/utils.o
[100%] Linking CXX executable run
/autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: CMakeFiles/run.dir/main.o: in function `boost::program_options::typed_value<std::__cxx11::basic_string<char, std::char_traits<char>, std::al
locator<char> >, char>::xparse(boost::any&, 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&) const':
main.cpp:(.text._ZNK5boost15program_options11typed_valueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE6xparseERNS_3anyERKSt6vectorIS7_SaIS7_EE[_ZNK5boost15program_options11typed_valueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE6xparseERNS_3anyERKSt6vectorIS7_SaIS
7_EE]+0x1a): undefined reference to `boost::program_options::validate(boost::any&, 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&, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, int)'
/autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: CMakeFiles/run.dir/main.o: in function `boost::program_options::basic_command_line_parser<char>::basic_command_line_parser(int, char const* 
const*)':
main.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcEC2EiPKPKc[_ZN5boost15program_options25basic_command_line_parserIcEC5EiPKPKc]+0x22c): undefined reference to `boost::program_options::to_internal(std::__cxx11::basic_string<char, std::char_traits<char>, std::allo
cator<char> > const&)'
/autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: main.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcEC2EiPKPKc[_ZN5boost15program_options25basic_command_line_parserIcEC5
EiPKPKc]+0x278): undefined reference to `boost::program_options::detail::cmdline::cmdline(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> > > > c
onst&)'
/autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: CMakeFiles/run.dir/main.o: in function `boost::program_options::basic_parsed_options<char> boost::program_options::parse_command_line<char>(
int, char const* const*, boost::program_options::options_description const&, int, boost::function1<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__cxx
11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)':
main.cpp:(.text._ZN5boost15program_options18parse_command_lineIcEENS0_20basic_parsed_optionsIT_EEiPKPKS3_RKNS0_19options_descriptionEiNS_9function1ISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESJ_ERKSJ_EE[_ZN5boost15program_options18parse_command_lineIcEENS0_20basic_p
arsed_optionsIT_EEiPKPKS3_RKNS0_19options_descriptionEiNS_9function1ISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESJ_ERKSJ_EE]+0xc8): undefined reference to `boost::program_options::detail::cmdline::set_additional_parser(boost::function1<std::pair<std::__cxx11::basic_
string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)'
/autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: CMakeFiles/run.dir/main.o: in function `main':
main.cpp:(.text.startup.main+0x96): undefined reference to `boost::program_options::options_description::options_description(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned int)'
/autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: CMakeFiles/run.dir/main.o: in function `boost::program_options::typed_value<std::__cxx11::basic_string<char, std::char_traits<char>, std::al
locator<char> >, char>::name() const':
main.cpp:(.text._ZNK5boost15program_options11typed_valueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE4nameEv[_ZNK5boost15program_options11typed_valueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE4nameEv]+0x38): undefined reference to `boost::program_options::arg[a
bi:cxx11]'
/autofs/bal31/jhsu/home/_env/anaconda3/envs/phylex_env/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: CMakeFiles/run.dir/main.o:(.data.rel.ro._ZTVN5boost15program_options11typed_valueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcEE[_Z
TVN5boost15program_options11typed_valueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcEE]+0x40): undefined reference to `boost::program_options::value_semantic_codecvt_helper<char>::parse(boost::any&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::a
llocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool) const'
collect2: error: ld returned 1 exit status
CMakeFiles/run.dir/build.make:296: recipe for target 'run' failed
make[2]: *** [run] Error 1
CMakeFiles/Makefile2:110: recipe for target 'CMakeFiles/run.dir/all' failed
make[1]: *** [CMakeFiles/run.dir/all] Error 2
Makefile:135: recipe for target 'all' failed
make: *** [all] Error 2
sujunhao commented 1 year ago

updated boost to version 1.82 and the problem was solved. It may be better to indicate the version of each package in README.