Closed b4zz4 closed 2 years ago
Your description is a bit sparse. So I'm guessing you're receiving this error trying to compile Rhubarb from source. What C++ compiler (exact version) on what OS are you using?
Sorry, Arch GNU/Linux
The previous version was perfectly well compiled
What C++ compiler (exact version) are you using?
wget https://github.com/DanielSWolf/rhubarb-lip-sync/archive/refs/tags/v1.11.0.zip
unzip v1.11.0.zip
cd rhubarb-lip-sync-1.11.0
mkdir build
cd build
cmake ..
make rhubarb
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.
/home/bazza/src/aur/rhubarb-lip-sync/src/rhubarb-lip-sync-1.11.0/rhubarb/src/tools/exceptions.cpp: In function 'std::string getMessage(const std::exception&)':
/home/bazza/src/aur/rhubarb-lip-sync/src/rhubarb-lip-sync-1.11.0/rhubarb/src/tools/exceptions.cpp:9:17: error: 'rethrow_if_nested' was not declared in this scope
9 | rethrow_if_nested(e);
| ^~~~~
make[3]: [rhubarb/CMakeFiles/rhubarb-tools.dir/build.make:76: rhubarb/CMakeFiles/rhubarb-tools.dir/src/tools/exceptions.cpp.o] Error 1
make[3]: Waiting for unfinished jobs....
/home/bazza/src/aur/rhubarb-lip-sync/src/rhubarb-lip-sync-1.11.0/rhubarb/src/tools/ProgressBar.cpp: In member function 'void ProgressBar::updateLoop()':
/home/bazza/src/aur/rhubarb-lip-sync/src/rhubarb-lip-sync-1.11.0/rhubarb/src/tools/ProgressBar.cpp:43:35: error: 'sleep_for' is not a member of 'std::this_thread'
43 | std::this_thread::sleep_for(animationInterval);
| ^~~~~
make[3]: [rhubarb/CMakeFiles/rhubarb-tools.dir/build.make:146: rhubarb/CMakeFiles/rhubarb-tools.dir/src/tools/ProgressBar.cpp.o] Error 1
make[2]: [CMakeFiles/Makefile2:366: rhubarb/CMakeFiles/rhubarb-tools.dir/all] Error 2
make[1]: [CMakeFiles/Makefile2:525: rhubarb/CMakeFiles/rhubarb.dir/rule] Error 2
make: [Makefile:293: rhubarb] Error 2
==> ERROR: A failure occurred in prepare().
Aborting...
What C++ compiler (exact version) are you using?
~$>cmake --version cmake version 3.21.3
You gave me the version of CMake you're using. But I still don't know which C++ compiler CMake is calling.
gcc (GCC) 11.1.0
Sorry for the delay. I just pushed a commit to the branch feature/#103-minor-syntax-fixes
. This should fix both the CMake warning and the compiler error. Could you check if it does?
Better a little.
ProgressBar.cpp: En la función miembro ‘void ProgressBar::updateLoop()’:
error: ‘sleep_for’ no es un miembro de ‘std::this_thread’
43 | std::this_thread::sleep_for(animationInterval);
| ^~~~~~~~~
Fixed that one, too.
BTW, I don't think the errors you're getting have anything to do with code changes in Rhubarb. The code for this last one hasn't changed in a long time. My guess is that you recently installed a newer, stricter version of the standard library. Every commit I make is automatically compiled on three different OSs with four different compilers, and they all failed to spot these problems.
Great. This branch will you join master?
I maintain the repository of arch linux https://aur.archlinux.org/packages/rhubarb-lip-sync/
Just merged the fix to master
. Nice to learn that you maintain a Rhubarb package for Arch Linux; I didn't know there was one!
Arch GNU/Linux