Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compilation error ExaBayes 1.5.1 #11

Open
uriborrajo opened this issue Nov 10, 2023 · 0 comments
Open

Compilation error ExaBayes 1.5.1 #11

uriborrajo opened this issue Nov 10, 2023 · 0 comments

Comments

@uriborrajo
Copy link

I am struggling to compile ExaBayes version 1.5.1 on my Ubuntu workstation.

I have the following installed:

gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Ubuntu clang version 14.0.0-1ubuntu1.1
mpirun (Open MPI) 4.1.2

ERROR:

CXX src/apps/yggdrasil-exabayes.o
In file included from ./src/comm/LocalComm.hpp:10,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueue.hpp:56:24: error: template argument 1 is invalid
56 | Node(std::vector msg, std::vector whoReads );
| ^
./src/comm/threads/MessageQueue.hpp:56:24: error: template argument 2 is invalid
./src/comm/threads/MessageQueue.hpp:61:35: error: template argument 1 is invalid
61 | std::tuple<int, std::vector > getConsumed(int threadId);
| ^
./src/comm/threads/MessageQueue.hpp:61:35: error: template argument 2 is invalid
./src/comm/threads/MessageQueue.hpp:61:37: error: template argument 2 is invalid
61 | std::tuple<int, std::vector > getConsumed(int threadId);
| ^
./src/comm/threads/MessageQueue.hpp:64:19: error: template argument 1 is invalid
64 | std::vector _message;
| ^
./src/comm/threads/MessageQueue.hpp:64:19: error: template argument 2 is invalid
In file included from ./src/comm/threads/MessageQueue.hpp:71,
from ./src/comm/LocalComm.hpp:10,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueue.tpp: In member function ‘void MessageQueue::produce(std::vector, const std::vector&)’:
./src/comm/threads/MessageQueue.tpp:15:33: error: template argument 1 is invalid
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueue.tpp:15:33: error: template argument 2 is invalid
./src/comm/threads/MessageQueue.tpp:15:52: error: reference to ‘byte’ is ambiguous
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:61,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from ./src/apps/exabayes.cpp:22:
/usr/include/c++/11/bits/cpp_type_traits.h:404:30: note: candidates are: ‘enum class std::byte’
404 | enum class byte : unsigned char;
| ^~~~
In file included from ./src/comm/LocalComm.hpp:10,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueue.hpp:24:17: note: ‘typedef uint8_t byte’
24 | typedef uint8_t byte;
| ^~~~
In file included from ./src/comm/threads/MessageQueue.hpp:71,
from ./src/comm/LocalComm.hpp:10,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueue.tpp:15:56: error: expected ‘>’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueue.tpp:15:56: error: expected ‘(’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
| (
./src/comm/threads/MessageQueue.tpp:15:57: error: expected primary-expression before ‘>’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueue.tpp:15:89: error: reference to ‘byte’ is ambiguous
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:61,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from ./src/apps/exabayes.cpp:22:
/usr/include/c++/11/bits/cpp_type_traits.h:404:30: note: candidates are: ‘enum class std::byte’
404 | enum class byte : unsigned char;
| ^~~~
In file included from ./src/comm/LocalComm.hpp:10,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueue.hpp:24:17: note: ‘typedef uint8_t byte’
24 | typedef uint8_t byte;
| ^~~~
In file included from ./src/comm/threads/MessageQueue.hpp:71,
from ./src/comm/LocalComm.hpp:10,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueue.tpp:15:93: error: expected ‘>’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueue.tpp:15:93: error: expected ‘(’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
| (
./src/comm/threads/MessageQueue.tpp:15:94: error: expected primary-expression before ‘>’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueue.tpp:15:121: error: expected ‘)’ before ‘;’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
| )
./src/comm/threads/MessageQueue.tpp: In member function ‘std::tuple<bool, std::vector<T, std::allocator<_CharT> > > MessageQueue::consume(int)’:
./src/comm/threads/MessageQueue.tpp:46:39: error: template argument 1 is invalid
46 | auto msg = std::vector();
| ^
./src/comm/threads/MessageQueue.tpp:46:39: error: template argument 2 is invalid
In file included from ./src/comm/LocalComm.hpp:11,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueueSingle.hpp: At global scope:
./src/comm/threads/MessageQueueSingle.hpp:46:24: error: template argument 1 is invalid
46 | Node(std::vector msg );
| ^
./src/comm/threads/MessageQueueSingle.hpp:46:24: error: template argument 2 is invalid
./src/comm/threads/MessageQueueSingle.hpp:50:19: error: template argument 1 is invalid
50 | std::vector _message;
| ^
./src/comm/threads/MessageQueueSingle.hpp:50:19: error: template argument 2 is invalid
In file included from ./src/comm/threads/MessageQueueSingle.hpp:55,
from ./src/comm/LocalComm.hpp:11,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueueSingle.tpp: In member function ‘void MessageQueueSingle::produce(std::vector)’:
./src/comm/threads/MessageQueueSingle.tpp:15:33: error: template argument 1 is invalid
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueueSingle.tpp:15:33: error: template argument 2 is invalid
./src/comm/threads/MessageQueueSingle.tpp:15:52: error: reference to ‘byte’ is ambiguous
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:61,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from ./src/apps/exabayes.cpp:22:
/usr/include/c++/11/bits/cpp_type_traits.h:404:30: note: candidates are: ‘enum class std::byte’
404 | enum class byte : unsigned char;
| ^~~~
In file included from ./src/comm/LocalComm.hpp:11,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueueSingle.hpp:16:17: note: ‘typedef uint8_t byte’
16 | typedef uint8_t byte;
| ^~~~
In file included from ./src/comm/threads/MessageQueueSingle.hpp:55,
from ./src/comm/LocalComm.hpp:11,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueueSingle.tpp:15:56: error: expected ‘>’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueueSingle.tpp:15:56: error: expected ‘(’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
| (
./src/comm/threads/MessageQueueSingle.tpp:15:57: error: expected primary-expression before ‘>’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueueSingle.tpp:15:89: error: reference to ‘byte’ is ambiguous
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:61,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from ./src/apps/exabayes.cpp:22:
/usr/include/c++/11/bits/cpp_type_traits.h:404:30: note: candidates are: ‘enum class std::byte’
404 | enum class byte : unsigned char;
| ^~~~
In file included from ./src/comm/LocalComm.hpp:11,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueueSingle.hpp:16:17: note: ‘typedef uint8_t byte’
16 | typedef uint8_t byte;
| ^~~~
In file included from ./src/comm/threads/MessageQueueSingle.hpp:55,
from ./src/comm/LocalComm.hpp:11,
from ./src/comm/Communicator.hpp:5,
from ./src/comm/ParallelSetup.hpp:8,
from ./src/mcmc/SampleMaster.hpp:20,
from ./src/apps/exabayes.cpp:29:
./src/comm/threads/MessageQueueSingle.tpp:15:93: error: expected ‘>’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueueSingle.tpp:15:93: error: expected ‘(’ before ‘’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte
>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
| (
./src/comm/threads/MessageQueueSingle.tpp:15:94: error: expected primary-expression before ‘>’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
./src/comm/threads/MessageQueueSingle.tpp:15:121: error: expected ‘)’ before ‘;’ token
15 | auto tmpMsg = std::vector(reinterpret_cast<byte*>(msg.data()), reinterpret_cast<byte*>(msg.data() + msg.size()));
| ^
| )
./src/comm/threads/MessageQueueSingle.tpp: In member function ‘std::tuple<bool, std::vector<T, std::allocator<_CharT> > > MessageQueueSingle::consume(int)’:
./src/comm/threads/MessageQueueSingle.tpp:37:35: error: template argument 1 is invalid
37 | auto msg = std::vector();
| ^
./src/comm/threads/MessageQueueSingle.tpp:37:35: error: template argument 2 is invalid
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning’ may have been intended to silence earlier diagnostics
cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics
make: *** [Makefile:5278: src/apps/yggdrasil-exabayes.o] Error 1

Any assistance or solution would be greatly appreciated.

Thank you!

Oriol

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant