Error with compiling

153 views
Skip to first unread message

Ivan Koludarov

unread,
May 7, 2020, 11:40:11 AM5/7/20
to ExaBayes
Hi guys, I am having weird errors when compiling exabayes on Ubuntu 19, would really appreciate if you can suggest a way to solve it.
I am using ./configure --enable-mpi && make and exabayes 1.5 distribution. Here's the output

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for long long int... yes
checking whether g++ supports C++11 features by default... yes
checking whether g++ supports C++14 features by default... yes
checking for gcc option to accept ISO C99... none needed
checking for gcc option to accept ISO Standard C... (cached) none needed
checking for gcc option to accept ISO C99... (cached) none needed
checking for ranlib... ranlib
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for x86 cpuid  output... unknown
checking for x86-AVX xgetbv  output... unknown
checking for x86 cpuid 0x00000000 output... f:756e6547:6c65746e:49656e69
checking for x86 cpuid 0x80000000 output... 80000008:0:0:0
checking for x86 cpuid 0x00000001 output... 306f2:10200800:7ffefbff:bfebfbff
checking for x86 cpuid 0x00000007 output... 0:37ab:0:9c000400
checking for x86 cpuid 0x80000001 output... 0:0:21:2c100800
checking for x86-AVX xgetbv 0x00000000 output... 7:0
checking whether RDRND is supported by the processor... yes
checking whether RDRND is supported by the processor and OS... yes
checking whether C compiler accepts -mrdrnd... yes
checking whether BMI1 is supported by the processor... yes
checking whether BMI1 is supported by the processor and OS... yes
checking whether C compiler accepts -mbmi... yes
checking whether BMI2 is supported by the processor... yes
checking whether BMI2 is supported by the processor and OS... yes
checking whether C compiler accepts -mbmi2... yes
checking whether ADX is supported by the processor... no
checking whether MPX is supported by the processor... no
checking whether PREFETCHWT1 is supported by the processor... no
checking whether ABM is supported by the processor... yes
checking whether ABM is supported by the processor and OS... yes
checking whether C compiler accepts -mabm... yes
checking whether MMX is supported by the processor... yes
checking whether MMX is supported by the processor and OS... yes
checking whether C compiler accepts -mmmx... yes
checking whether SSE is supported by the processor... yes
checking whether SSE is supported by the processor and OS... yes
checking whether C compiler accepts -msse... yes
checking whether SSE2 is supported by the processor... yes
checking whether SSE2 is supported by the processor and OS... yes
checking whether C compiler accepts -msse2... yes
checking whether SSE3 is supported by the processor... yes
checking whether SSE3 is supported by the processor and OS... yes
checking whether C compiler accepts -msse3... yes
checking whether SSSE3 is supported by the processor... yes
checking whether SSSE3 is supported by the processor and OS... yes
checking whether C compiler accepts -mssse3... yes
checking whether SSE4.1 is supported by the processor... yes
checking whether SSE4.1 is supported by the processor and OS... yes
checking whether C compiler accepts -msse4.1... yes
checking whether SSE4.2 is supported by the processor... yes
checking whether SSE4.2 is supported by the processor and OS... yes
checking whether C compiler accepts -msse4.2... yes
checking whether SSE4a is supported by the processor... no
checking whether SHA is supported by the processor... no
checking whether AES is supported by the processor... yes
checking whether AES is supported by the processor and OS... yes
checking whether C compiler accepts -maes... yes
checking whether AVX is supported by the processor... yes
checking whether AVX is supported by the processor and OS... yes
checking whether C compiler accepts -mavx... yes
checking whether FMA3 is supported by the processor... yes
checking whether FMA3 is supported by the processor and OS... yes
checking whether C compiler accepts -mfma... yes
checking whether FMA4 is supported by the processor... no
checking whether XOP is supported by the processor... no
checking whether AVX2 is supported by the processor... yes
checking whether AVX2 is supported by the processor and OS... yes
checking whether C compiler accepts -mavx2... yes
checking whether AVX512-F is supported by the processor... no
checking whether AVX512-CD is supported by the processor... no
checking whether AVX512-PF is supported by the processor... no
checking whether AVX512-ER is supported by the processor... no
checking whether AVX512-VL is supported by the processor... no
checking whether AVX512-BW is supported by the processor... no
checking whether AVX512-DQ is supported by the processor... no
checking whether AVX512-IFMA is supported by the processor... no
checking whether AVX512-VBMI is supported by the processor... no
checking for a sed that does not truncate output... /bin/sed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking whether gcc is Clang... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking whether more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for inline... inline
checking for size_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... yes
checking for getpagesize... yes
checking for working mmap... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking for clock_gettime... yes
checking for getcwd... yes
checking for getpagesize... (cached) yes
checking for gettimeofday... yes
checking for memset... yes
checking for pow... no
checking for sqrt... no
checking for strcasecmp... yes
checking for strchr... yes
checking for mpicxx... /usr/bin/mpicxx
Checking whether /usr/bin/mpicxx responds to '-showme:compile'... yes

RESULT:
MPI_CXXFLAGS=-I/usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -I/usr/lib/x86_64-linux-gnu/openmpi/include -pthread
MPI_CXXLDFLAGS=-pthread -L/usr/lib/x86_64-linux-gnu/openmpi/lib -lmpi_cxx -lmpi

found CXXFLAGS: -I/usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -I/usr/lib/x86_64-linux-gnu/openmpi/include -pthread
found CXXLDFLAGS: -pthread -L/usr/lib/x86_64-linux-gnu/openmpi/lib -lmpi_cxx -lmpi
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/config.h
config.status: src/config.h is unchanged
config.status: executing depfiles commands
  CXX      src/libbayes_a-TreeRandomizer.o
In file included from ./src/system/GlobalVariables.hpp:18,
                 from ./src/system/log_double.hpp:10,
                 from ./src/system/extensions.hpp:10,
                 from ./src/model/TreeAln.hpp:9,
                 from ./src/TreeRandomizer.hpp:8,
                 from ./src/TreeRandomizer.cpp:1:
./src/common.h:20:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   20 | #if USE_AVX
      |     ^~~~~~~
./src/common.h:20:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
./src/common.h:20:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from ./src/model/ProtModel.hpp:9,
                 from ./src/model/TreeAln.hpp:13,
                 from ./src/TreeRandomizer.hpp:8,
                 from ./src/TreeRandomizer.cpp:1:
./src/pll.h:23:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   23 | #if USE_SSE
      |     ^~~~~~~
./src/pll.h:23:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
./src/pll.h:27:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   27 | #if USE_AVX
      |     ^~~~~~~
./src/pll.h:27:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
./src/pll.h:27:5: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.hpp:12:31: error: ‘std::function’ has not been declared
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.hpp:64:60: note: in expansion of macro ‘DATA_COMBINE_FUN’
   64 |   std::vector<T> commTreeUp(std::vector<T> data, int root, DATA_COMBINE_FUN fun);
      |                                                            ^~~~~~~~~~~~~~~~
./src/comm/LocalComm.hpp:12:39: error: expected ‘,’ or ‘...’ before ‘<’ token
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                                       ^
./src/comm/LocalComm.hpp:64:60: note: in expansion of macro ‘DATA_COMBINE_FUN’
   64 |   std::vector<T> commTreeUp(std::vector<T> data, int root, DATA_COMBINE_FUN fun);
      |                                                            ^~~~~~~~~~~~~~~~
./src/comm/LocalComm.hpp:12:31: error: ‘std::function’ has not been declared
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.hpp:69:65: note: in expansion of macro ‘DATA_COMBINE_FUN’
   69 | td::vector<T> commTreeUpAsync(std::vector<T> data, int root, DATA_COMBINE_FUN fun);
      |                                                              ^~~~~~~~~~~~~~~~

./src/comm/LocalComm.hpp:12:39: error: expected ‘,’ or ‘...’ before ‘<’ token
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                                       ^
./src/comm/LocalComm.hpp:69:65: note: in expansion of macro ‘DATA_COMBINE_FUN’
   69 | td::vector<T> commTreeUpAsync(std::vector<T> data, int root, DATA_COMBINE_FUN fun);
      |                                                              ^~~~~~~~~~~~~~~~

./src/comm/LocalComm.tpp: In member function ‘std::vector<T> LocalComm::gatherVariableKnownLength(std::vector<T>, std::vector<int>&, std::vector<int>&, int)’:
./src/comm/LocalComm.hpp:12:31: error: ‘function’ is not a member of ‘std’
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.tpp:51:3: note: in expansion of macro ‘DATA_COMBINE_FUN’
   51 |   DATA_COMBINE_FUN gatherer = [](std::vector<T>& acc, typename std::vector<T>::const_iterator  beginDon, typename std::vector<T>::const_iterator endDon)
      |   ^~~~~~~~~~~~~~~~
In file included from ./src/comm/LocalComm.hpp:90,
                 from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.tpp:2:1: note: ‘std::function’ is defined in header ‘<functional>’; did you forget to ‘#include <functional>’?
    1 | #include <cassert>
  +++ |+#include <functional>
    2 |
In file included from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.hpp:12:40: error: expected primary-expression before ‘void’
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                                        ^~~~
./src/comm/LocalComm.tpp:51:3: note: in expansion of macro ‘DATA_COMBINE_FUN’
   51 |   DATA_COMBINE_FUN gatherer = [](std::vector<T>& acc, typename std::vector<T>::const_iterator  beginDon, typename std::vector<T>::const_iterator endDon)
      |   ^~~~~~~~~~~~~~~~
In file included from ./src/comm/LocalComm.hpp:90,
                 from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.tpp:56:34: error: ‘gatherer’ was not declared in this scope; did you mean ‘gather’?
   56 |   return commTreeUp(myData,root, gatherer) ;
      |                                  ^~~~~~~~
      |                                  gather
In file included from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.tpp: In member function ‘std::vector<T> LocalComm::reduce(std::vector<T>, int)’:
./src/comm/LocalComm.hpp:12:31: error: ‘function’ is not a member of ‘std’
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.tpp:84:7: note: in expansion of macro ‘DATA_COMBINE_FUN’
   84 |       DATA_COMBINE_FUN reducer = [](  std::vector<T> &acc,  typename std::vector<T>::const_iterator beginDonator, typename std::vector<T>::const_iterator endDonator)
      |       ^~~~~~~~~~~~~~~~
./src/comm/LocalComm.hpp:12:31: note: ‘std::function’ is defined in header ‘<functional>’; did you forget to ‘#include <functional>’?
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.tpp:84:7: note: in expansion of macro ‘DATA_COMBINE_FUN’
   84 |       DATA_COMBINE_FUN reducer = [](  std::vector<T> &acc,  typename std::vector<T>::const_iterator beginDonator, typename std::vector<T>::const_iterator endDonator)
      |       ^~~~~~~~~~~~~~~~
./src/comm/LocalComm.hpp:12:40: error: expected primary-expression before ‘void’
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                                        ^~~~
./src/comm/LocalComm.tpp:84:7: note: in expansion of macro ‘DATA_COMBINE_FUN’
   84 |       DATA_COMBINE_FUN reducer = [](  std::vector<T> &acc,  typename std::vector<T>::const_iterator beginDonator, typename std::vector<T>::const_iterator endDonator)
      |       ^~~~~~~~~~~~~~~~
In file included from ./src/comm/LocalComm.hpp:90,
                 from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.tpp:93:41: error: ‘reducer’ was not declared in this scope; did you mean ‘reduce’?
   93 |       return commTreeUpAsync(data,root, reducer);
      |                                         ^~~~~~~
      |                                         reduce
In file included from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.tpp: In member function ‘std::vector<T> LocalComm::gatherVariableLength(std::vector<T>, int)’:
./src/comm/LocalComm.hpp:12:31: error: ‘function’ is not a member of ‘std’
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.tpp:102:3: note: in expansion of macro ‘DATA_COMBINE_FUN’
  102 |   DATA_COMBINE_FUN gatherer = []( std::vector<T> &acc, typename std::vector<T>::const_iterator beginDonator,  typename std::vector<T>::const_iterator endDonator)
      |   ^~~~~~~~~~~~~~~~
./src/comm/LocalComm.hpp:12:31: note: ‘std::function’ is defined in header ‘<functional>’; did you forget to ‘#include <functional>’?
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.tpp:102:3: note: in expansion of macro ‘DATA_COMBINE_FUN’
  102 |   DATA_COMBINE_FUN gatherer = []( std::vector<T> &acc, typename std::vector<T>::const_iterator beginDonator,  typename std::vector<T>::const_iterator endDonator)
      |   ^~~~~~~~~~~~~~~~
./src/comm/LocalComm.hpp:12:40: error: expected primary-expression before ‘void’
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                                        ^~~~
./src/comm/LocalComm.tpp:102:3: note: in expansion of macro ‘DATA_COMBINE_FUN’
  102 |   DATA_COMBINE_FUN gatherer = []( std::vector<T> &acc, typename std::vector<T>::const_iterator beginDonator,  typename std::vector<T>::const_iterator endDonator)
      |   ^~~~~~~~~~~~~~~~
In file included from ./src/comm/LocalComm.hpp:90,
                 from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.tpp:107:34: error: ‘gatherer’ was not declared in this scope; did you mean ‘gather’?
  107 |   return commTreeUp(myData,root, gatherer) ;
      |                                  ^~~~~~~~
      |                                  gather
In file included from ./src/comm/Communicator.hpp:5,
                 from ./src/comm/ParallelSetup.hpp:8,
                 from ./src/TreeRandomizer.cpp:5:
./src/comm/LocalComm.tpp: At global scope:
./src/comm/LocalComm.hpp:12:31: error: ‘std::function’ has not been declared
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.tpp:204:74: note: in expansion of macro ‘DATA_COMBINE_FUN’
  204 | T> LocalComm::commTreeUpAsync(std::vector<T> data, int root, DATA_COMBINE_FUN fun)
      |                                                              ^~~~~~~~~~~~~~~~

./src/comm/LocalComm.hpp:12:39: error: expected ‘,’ or ‘...’ before ‘<’ token
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                                       ^
./src/comm/LocalComm.tpp:204:74: note: in expansion of macro ‘DATA_COMBINE_FUN’
  204 | T> LocalComm::commTreeUpAsync(std::vector<T> data, int root, DATA_COMBINE_FUN fun)
      |                                                              ^~~~~~~~~~~~~~~~

./src/comm/LocalComm.hpp:12:31: error: ‘std::function’ has not been declared
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                               ^~~~~~~~
./src/comm/LocalComm.tpp:277:69: note: in expansion of macro ‘DATA_COMBINE_FUN’
  277 | ctor<T> LocalComm::commTreeUp(std::vector<T> data, int root, DATA_COMBINE_FUN fun)
      |                                                              ^~~~~~~~~~~~~~~~

./src/comm/LocalComm.hpp:12:39: error: expected ‘,’ or ‘...’ before ‘<’ token
   12 | #define DATA_COMBINE_FUN std::function<void(std::vector<T>& acc,  typename std::vector<T>::const_iterator,  typename std::vector<T>::const_iterator)>
      |                                       ^
./src/comm/LocalComm.tpp:277:69: note: in expansion of macro ‘DATA_COMBINE_FUN’
  277 | ctor<T> LocalComm::commTreeUp(std::vector<T> data, int root, DATA_COMBINE_FUN fun)
      |                                                              ^~~~~~~~~~~~~~~~

cc1plus: warning: unrecognized command line option ‘-Wno-unknown-warning’
cc1plus: warning: unrecognized command line option ‘-Wno-unknown-warning-option’

Alexandros Stamatakis

unread,
May 7, 2020, 11:52:59 PM5/7/20
to exab...@googlegroups.com
Dear Ivan,

This looks weird.

Have you tried compiling it without MPI first?

It seems that the errors you are getting are somehow related with the
communication routines.

Alexis
> --
> You received this message because you are subscribed to the Google
> Groups "ExaBayes" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to exabayes+u...@googlegroups.com
> <mailto:exabayes+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/exabayes/cd99993d-7719-4b53-ba79-db28adb08dad%40googlegroups.com
> <https://groups.google.com/d/msgid/exabayes/cd99993d-7719-4b53-ba79-db28adb08dad%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
Alexandros (Alexis) Stamatakis

Research Group Leader, Heidelberg Institute for Theoretical Studies
Full Professor, Dept. of Informatics, Karlsruhe Institute of Technology

www.exelixis-lab.org

Ivan Koludarov

unread,
May 8, 2020, 4:27:46 AM5/8/20
to ExaBayes
Dear Alexis,

I have, it gives the same errors. Do you think there are any routes I can take with it that have a chance of succeeding?
Or if you have an mpi docker image somewhere, that'd be even better ) I need to rerun some trees for a review and I don't want to switch to another software, especially since I really like exabayes.

Thanks anyway,
Ivan

Ivan Koludarov

unread,
May 8, 2020, 4:29:20 AM5/8/20
to ExaBayes
sorry, just to clarify - docker image of mpi version of exabayes, because I could only find a non-mpi one here https://hub.docker.com/r/ohdzagenetics/exabayes/

Alexey Kozlov

unread,
May 9, 2020, 8:09:31 AM5/9/20
to ExaBayes
Hi Ivan,

I'm just guessing here, but seems like you hit this one:


So please try the the fix from the link above, ie add

#include <functional>


into

src/comm/LocalComm.hpp


Best,
Alexey

Ivan Koludarov

unread,
May 12, 2020, 4:54:32 AM5/12/20
to ExaBayes
Hi Alexey,

It worked, so many thanks!

Best,
Ivan
Reply all
Reply to author
Forward
0 new messages