isovic / racon

Ultrafast consensus module for raw de novo genome assembly of long uncorrected reads. http://genome.cshlp.org/content/early/2017/01/18/gr.214270.116 Note: This was the original repository which will no longer be officially maintained. Please use the new official repository here:
https://github.com/lbcb-sci/racon
MIT License
261 stars 48 forks source link

Installation error #153

Closed pulichandramoulireddy closed 4 years ago

pulichandramoulireddy commented 4 years ago

Hi, I am trying to install racon on centos 6.10, cmake version 3.6.2, gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23) but the following error is popping. Can anyone suggest a solution? Thank you!

[ 3%] Building CXX object vendor/logger/CMakeFiles/logger.dir/src/logger.cpp.o In file included from /root/racon/vendor/logger/src/logger.cpp:9: /root/racon/vendor/logger/include/logger/logger.hpp:24: error: ‘logger::Logger::Logger(logger::Logger&&)’ cannot be defaulted /root/racon/vendor/logger/include/logger/logger.hpp:25: error: ‘logger::Logger& logger::Logger::operator=(logger::Logger&&)’ cannot be defaulted /root/racon/vendor/logger/include/logger/logger.hpp:53: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/include/logger/logger.hpp:53: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/include/logger/logger.hpp:53: error: template argument 1 is invalid /root/racon/vendor/logger/include/logger/logger.hpp:53: error: template argument 2 is invalid /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::log()’: /root/racon/vendor/logger/src/logger.cpp:21: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp:21: error: unable to deduce ‘auto’ from ‘’ /root/racon/vendor/logger/src/logger.cpp:22: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/src/logger.cpp:22: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/src/logger.cpp:22: error: template argument 1 is invalid /root/racon/vendor/logger/src/logger.cpp:22: error: template argument 2 is invalid /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::log(const std::string&) const’: /root/racon/vendor/logger/src/logger.cpp:30: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::bar(const std::string&)’: /root/racon/vendor/logger/src/logger.cpp:39: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::total(const std::string&) const’: /root/racon/vendor/logger/src/logger.cpp:52: error: ‘std::chrono::steady_clock’ has not been declared make[2]: [vendor/logger/CMakeFiles/logger.dir/src/logger.cpp.o] Error 1 make[1]: [vendor/logger/CMakeFiles/logger.dir/all] Error 2 make: *** [all] Error 2

rvaser commented 4 years ago

Hello, the minimal required gcc version is 4.8.

Best regards, Robert

pulichandramoulireddy commented 4 years ago

Thank you! Robert, I realised it after posting I am upgrading gcc.

pulichandramoulireddy commented 4 years ago

I have updated to gcc (GCC) 5.1.0 and rebuild and try to install it again. I am facing the same error. make is throwing following error. Scanning dependencies of target logger [ 3%] Building CXX object vendor/logger/CMakeFiles/logger.dir/src/logger.cpp.o In file included from /root/racon/vendor/logger/src/logger.cpp:9: /root/racon/vendor/logger/include/logger/logger.hpp:24: error: ‘logger::Logger::Logger(logger::Logger&&)’ cannot be defaulted /root/racon/vendor/logger/include/logger/logger.hpp:25: error: ‘logger::Logger& logger::Logger::operator=(logger::Logger&&)’ cannot be defaulted /root/racon/vendor/logger/include/logger/logger.hpp:53: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/include/logger/logger.hpp:53: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/include/logger/logger.hpp:53: error: template argument 1 is invalid /root/racon/vendor/logger/include/logger/logger.hpp:53: error: template argument 2 is invalid /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::log()’: /root/racon/vendor/logger/src/logger.cpp:21: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp:21: error: unable to deduce ‘auto’ from ‘’ /root/racon/vendor/logger/src/logger.cpp:22: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/src/logger.cpp:22: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/src/logger.cpp:22: error: template argument 1 is invalid /root/racon/vendor/logger/src/logger.cpp:22: error: template argument 2 is invalid /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::log(const std::string&) const’: /root/racon/vendor/logger/src/logger.cpp:30: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::bar(const std::string&)’: /root/racon/vendor/logger/src/logger.cpp:39: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::total(const std::string&) const’: /root/racon/vendor/logger/src/logger.cpp:52: error: ‘std::chrono::steady_clock’ has not been declared make[2]: [vendor/logger/CMakeFiles/logger.dir/src/logger.cpp.o] Error 1 make[1]: [vendor/logger/CMakeFiles/logger.dir/all] Error 2 make: *** [all] Error 2

rvaser commented 4 years ago

Please paste the output of make VERBOSE=1. I suspect that cmake did not pick up the updated compiler.

pulichandramoulireddy commented 4 years ago

This is the output

/usr/local/bin/cmake -H/root/racon -B/root/racon/build --check-build-system CMakeFiles/Makefile.cmake 0 /usr/local/bin/cmake -E cmake_progress_start /root/racon/build/CMakeFiles /root/racon/build/CMakeFiles/progress.marks make -f CMakeFiles/Makefile2 all make[1]: Entering directory /root/racon/build' make -f vendor/logger/CMakeFiles/logger.dir/build.make vendor/logger/CMakeFiles/logger.dir/depend make[2]: Entering directory/root/racon/build' cd /root/racon/build && /usr/local/bin/cmake -E cmake_depends "Unix Makefiles" /root/racon /root/racon/vendor/logger /root/racon/build /root/racon/build/vendor/logger /root/racon/build/vendor/logger/CMakeFiles/logger.dir/DependInfo.cmake --color= make[2]: Leaving directory /root/racon/build' make -f vendor/logger/CMakeFiles/logger.dir/build.make vendor/logger/CMakeFiles/logger.dir/build make[2]: Entering directory/root/racon/build' [ 3%] Building CXX object vendor/logger/CMakeFiles/logger.dir/src/logger.cpp.o cd /root/racon/build/vendor/logger && /usr/bin/c++ -I/root/racon/src -I/root/racon/vendor/logger/include -Wall -Wextra -pedantic -Wall -Wextra -pedantic -O3 -DNDEBUG -std=c++0x -o CMakeFiles/logger.dir/src/logger.cpp.o -c /root/racon/vendor/logger/src/logger.cpp In file included from /root/racon/vendor/logger/src/logger.cpp:9: /root/racon/vendor/logger/include/logger/logger.hpp:24: error: ‘logger::Logger::Logger(logger::Logger&&)’ cannot be defaulted /root/racon/vendor/logger/include/logger/logger.hpp:25: error: ‘logger::Logger& logger::Logger::operator=(logger::Logger&&)’ cannot be defaulted /root/racon/vendor/logger/include/logger/logger.hpp:53: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/include/logger/logger.hpp:53: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/include/logger/logger.hpp:53: error: template argument 1 is invalid /root/racon/vendor/logger/include/logger/logger.hpp:53: error: template argument 2 is invalid /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::log()’: /root/racon/vendor/logger/src/logger.cpp:21: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp:21: error: unable to deduce ‘auto’ from ‘’ /root/racon/vendor/logger/src/logger.cpp:22: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/src/logger.cpp:22: error: ‘steady_clock’ is not a member of ‘std::chrono’ /root/racon/vendor/logger/src/logger.cpp:22: error: template argument 1 is invalid /root/racon/vendor/logger/src/logger.cpp:22: error: template argument 2 is invalid /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::log(const std::string&) const’: /root/racon/vendor/logger/src/logger.cpp:30: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::bar(const std::string&)’: /root/racon/vendor/logger/src/logger.cpp:39: error: ‘std::chrono::steady_clock’ has not been declared /root/racon/vendor/logger/src/logger.cpp: In member function ‘void logger::Logger::total(const std::string&) const’: /root/racon/vendor/logger/src/logger.cpp:52: error: ‘std::chrono::steady_clock’ has not been declared make[2]: [vendor/logger/CMakeFiles/logger.dir/src/logger.cpp.o] Error 1 make[2]: Leaving directory `/root/racon/build' make[1]: [vendor/logger/CMakeFiles/logger.dir/all] Error 2 make[1]: Leaving directory `/root/racon/build' make: *** [all] Error 2

rvaser commented 4 years ago

What do you get when you run /usr/bin/c++ --version?

pulichandramoulireddy commented 4 years ago

c++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23)

rvaser commented 4 years ago

Try to find the path to your new compiler version and run:

CC=<path to gcc5.1> CXX=<path to g++5.1> cmake -DCMAKE_BUILD_TYPE=Release ..
pulichandramoulireddy commented 4 years ago

I tried CC=/usr/local/bin/gcc CXX=/usr/local/bin/g++ cmake -DCMAKE_BUILD_TYPE=Release .. but throwing same error again

rvaser commented 4 years ago

Does make VERBOSE=1 have the same output? The line of interest is:

cd /root/racon/build/vendor/logger && /usr/bin/c++ -I/root/racon/src -I/root/racon/vendor/logger/include -Wall -Wextra -pedantic -Wall -Wextra -pedantic -O3 -DNDEBUG -std=c++0x -o

pulichandramoulireddy commented 4 years ago

It appears problem solved. I have romoved the build directory and did build again using CC=/usr/local/bin/gcc CXX=/usr/local/bin/g++ cmake -DCMAKE_BUILD_TYPE=Release ..

Thank you!

rvaser commented 4 years ago

Great to hear! :)