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

tests build failed on mac #707

Closed
teoking opened this issue Jul 21, 2021 · 12 comments · Fixed by #714
Closed

tests build failed on mac #707

teoking opened this issue Jul 21, 2021 · 12 comments · Fixed by #714

Comments

@teoking
Copy link

teoking commented Jul 21, 2021

Hi community:

I've installed Catch2, but the tests build failed (tried make or cmake --build build --verbose):

Consolidate compiler generated dependencies of target openshot_protobuf
[  5%] Built target openshot_protobuf
[  6%] Automatic MOC for target openshot
[  6%] Built target openshot_autogen
Consolidate compiler generated dependencies of target openshot
[ 62%] Built target openshot
[ 62%] Automatic MOC for target openshot-player
[ 62%] Built target openshot-player_autogen
Consolidate compiler generated dependencies of target openshot-player
[ 64%] Built target openshot-player
Consolidate compiler generated dependencies of target openshot-html-example
[ 66%] Built target openshot-html-example
Consolidate compiler generated dependencies of target openshot-example
[ 67%] Built target openshot-example
Consolidate compiler generated dependencies of target pyopenshot
[ 70%] Built target pyopenshot
[ 71%] Building CXX object tests/CMakeFiles/catch-main.dir/catch_main.cpp.o
/Users/ted/Documents/GitHub/libopenshot_repo/libopenshot/tests/catch_main.cpp:32:10: fatal error: 'catch2/catch.hpp' file not found
#include <catch2/catch.hpp>
         ^~~~~~~~~~~~~~~~~~
1 error generated.
make[2]: *** [tests/CMakeFiles/catch-main.dir/catch_main.cpp.o] Error 1
make[1]: *** [tests/CMakeFiles/catch-main.dir/all] Error 2
make: *** [all] Error 2

Config command is here:

cmake -G "Unix Makefiles" -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -DCMAKE_PREFIX_PATH=$(brew --prefix qt5) -DCMAKE_EXE_LINKER_FLAGS="-stdlib=libc++" -DCMAKE_SHARED_LINKER_FLAGS="-stdlib=libc++" -D"CMAKE_INSTALL_RPATH_USE_LINK_PATH=1" -D"ENABLE_RUBY=0" -D"CMAKE_BUILD_TYPE:STRING=Release" -D"ENABLE_TESTS=1"  ../

Result:

-----------------------------------------------------------------
          Welcome to the OpenShot Build System!

CMake will now check libopenshot's build dependencies and inform
you of any missing files or other issues.

For more information, please visit <http://www.openshot.org/>.
-----------------------------------------------------------------

Generating build files for OpenShot with CMake 3.21.0
  Building libopenshot (version 0.2.5)
  SO/API/ABI Version: 19

-- Could NOT find ImageMagick (missing: ImageMagick_Magick++_LIBRARY ImageMagick_MagickCore_LIBRARY)
-- Looking for system jsoncpp
-- Could NOT find Resvg, using Qt SVG parsing instead (missing: Resvg_LIBRARIES Resvg_INCLUDE_DIRS)
CMake Deprecation Warning at bindings/python/CMakeLists.txt:34 (cmake_policy):
  The OLD behavior for policy CMP0078 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


-- PYTHON_MODULE_PATH: /usr/local/python
-- Doxygen found, documentation target enabled
-- Build configuration:
-- The following features have been enabled:

 * FFmpeg swresample, Audio resampling uses swresample
 * FFmpeg hwaccel, GPU-accelerated routines (FFmpeg 3.4+)
 * OpenCV algorithms, Use OpenCV algorithms
 * Parallel tests, Unit tests can use 12 processors
 * Unit tests, Compile unit tests for library functions
 * Non-default target 'coverage', Run unit tests and (if enabled) collect coverage data
 * Non-default target 'doc', Build formatted API documentation (HTML+SVG)

-- The following OPTIONAL packages have been found:

 * PkgConfig
 * OpenCV (required version >= 4)
 * Threads
 * PythonInterp (required version >= 3)
 * PythonLibs (required version >= 3)
 * Doxygen
 * Catch2

-- The following REQUIRED packages have been found:

 * OpenShotAudio (required version >= 0.2.0)
 * jsoncpp
 * Qt5Widgets
 * FFmpeg
 * OpenMP
 * ZeroMQ
 * Protobuf (required version >= 3)
 * Qt5Core (required version >= 5.15.2)
 * Qt5Gui
 * Qt5
 * SWIG (required version >= 3.0)

-- The following features have been disabled:

 * Coverage, analyze test coverage and generate report
 * IWYU (include-what-you-use), Scan all source files with 'iwyu'

-- The following OPTIONAL packages have not been found:

 * ImageMagick
 * cppzmq
 * Resvg

-- Configuring done
-- Generating done
-- Build files have been written to: /Users/ted/Documents/GitHub/libopenshot_repo/libopenshot/build

And Catch2 is surely installed:

$ brew --prefix catch2
/usr/local/opt/catch2

How to solve this? Thanks.

@teoking teoking changed the title build failed when enable tests on mac tests build failed on mac Jul 21, 2021
@jiapei100
Copy link

test building failed on Ubuntu 20.04 as well.
It seems to be catch2 issue. I installed the MOST up-to-date catch2 2.13.7

@ferdnyc
Copy link
Contributor

ferdnyc commented Aug 16, 2021

If catch2/catch.hpp isn't in the include path, I'm not sure what to tell you. CMake is clearly discovering it, so it sounds like there may be a packaging issue.

If you can post the section of a cmake --build <builddir> --verbose run where it attempts to compile catch_main, that may shed some light. (I'd specifically be looking to see the compiler command line.) You can get to that part of the build more quickly by explicitly building the coverage target, which will cause catch_main.cpp to be compiled before it builds the library. So, e.g.:

$ cmake --build build --target coverage --verbose
/usr/bin/cmake -S./libopenshot -B./libopenshot/build --check-build-system
 CMakeFiles/Makefile.cmake 0
/usr/bin/gmake  -f CMakeFiles/Makefile2 coverage
gmake[1]: Entering directory './libopenshot/build'
/usr/bin/cmake -S./libopenshot -B./libopenshot/build --check-build-system
 CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start ./libopenshot/build/CMakeFiles 80
/usr/bin/gmake  -f CMakeFiles/Makefile2 CMakeFiles/coverage.dir/all
gmake[2]: Entering directory './libopenshot/build'
/usr/bin/gmake  -f tests/CMakeFiles/catch-main.dir/build.make
 tests/CMakeFiles/catch-main.dir/depend
gmake[3]: Entering directory './libopenshot/build'
cd ./libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles"
 ./libopenshot ./libopenshot/tests ./libopenshot/build ./libopenshot/build/tests 
./libopenshot/build/tests/CMakeFiles/catch-main.dir/DependInfo.cmake --color=
Dependencies file "tests/CMakeFiles/catch-main.dir/catch_main.cpp.o.d" is newer than
 depends file
 "./libopenshot/build/tests/CMakeFiles/catch-main.dir/compiler_depend.internal".
Consolidate compiler generated dependencies of target catch-main
gmake[3]: Leaving directory './libopenshot/build'
/usr/bin/gmake  -f
 tests/CMakeFiles/catch-main.dir/build.make tests/CMakeFiles/catch-main.dir/build
gmake[3]: Entering directory './libopenshot/build'
[  1%] Building CXX object tests/CMakeFiles/catch-main.dir/catch_main.cpp.o
cd ./libopenshot/build/tests && /usr/lib64/ccache/c++   -Wall -Wextra -Wno-reorder
 -Wno-switch -O2 -g -DNDEBUG -std=c++11 -MD -MT
 tests/CMakeFiles/catch-main.dir/catch_main.cpp.o -MF
 CMakeFiles/catch-main.dir/catch_main.cpp.o.d -o
 CMakeFiles/catch-main.dir/catch_main.cpp.o -c ./libopenshot/tests/catch_main.cpp
gmake[3]: Leaving directory './libopenshot/build'
[  1%] Built target catch-main

(In my case, Catch2 is installed in /usr/include/ so there's no include path on the command line.)

The other thing to do would be to trace the processing of Catch2Targets.cmake, which you can do by adding these arguments to the initial cmake command (the one before the --build command):

--trace-expand --trace-source=Catch2Targets.cmake

And then paste the output of that run into a comment. Be sure to delete the CMakeCache.txt file from the builddir before running cmake again, if you're regenerating in an existing builddir.

@jiapei100
Copy link

In fact, if I enable BUILD_TESTING, I got the following ERROR messages:
I've got to turn BUILD_TESTING to OFF, in order to have libopenshot successfully built.

[  6%] Built target openshot_autogen
make  -f src/CMakeFiles/openshot.dir/build.make src/CMakeFiles/openshot.dir/depend
make[2]: Entering directory '....../libopenshot/build'
cd ....../libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" ....../libopenshot ....../libopenshot/src ....../libopenshot/build ....../libopenshot/build/src ....../libopenshot/build/src/CMakeFiles/openshot.dir/DependInfo.cmake --color=
Consolidate compiler generated dependencies of target openshot
In file included from /usr/local/include/catch2/catch_section_info.hpp:12,
                 from /usr/local/include/catch2/interfaces/catch_interfaces_reporter.hpp:11,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:16,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/internal/catch_stringref.hpp: In member function ‘constexpr char Catch::StringRef::operator[](Catch::StringRef::size_type) const’:
/usr/local/include/catch2/internal/catch_stringref.hpp:60:9: error: body of ‘constexpr’ function ‘constexpr char Catch::StringRef::operator[](Catch::StringRef::size_type) const’ not a return-statement
   60 |         }
      |         ^
/usr/local/include/catch2/internal/catch_stringref.hpp: In member function ‘constexpr Catch::StringRef Catch::StringRef::substr(Catch::StringRef::size_type, Catch::StringRef::size_type) const’:
/usr/local/include/catch2/internal/catch_stringref.hpp:83:9: error: body of ‘constexpr’ function ‘constexpr Catch::StringRef Catch::StringRef::substr(Catch::StringRef::size_type, Catch::StringRef::size_type) const’ not a return-statement
   83 |         }
      |         ^
In file included from /usr/local/include/catch2/interfaces/catch_interfaces_reporter.hpp:16,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:16,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/internal/catch_unique_ptr.hpp: At global scope:
/usr/local/include/catch2/internal/catch_unique_ptr.hpp:30:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   30 |         template <typename U, typename = std::enable_if_t<std::is_base_of<T, U>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_unique_ptr.hpp:30:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   30 |         template <typename U, typename = std::enable_if_t<std::is_base_of<T, U>::value>>
      |                                          ^~~
/usr/local/include/catch2/internal/catch_unique_ptr.hpp:30:58: error: expected ‘>’ before ‘<’ token
   30 |         template <typename U, typename = std::enable_if_t<std::is_base_of<T, U>::value>>
      |                                                          ^
/usr/local/include/catch2/internal/catch_unique_ptr.hpp:35:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   35 |         template <typename U, typename = std::enable_if_t<std::is_base_of<T, U>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_unique_ptr.hpp:35:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   35 |         template <typename U, typename = std::enable_if_t<std::is_base_of<T, U>::value>>
      |                                          ^~~
/usr/local/include/catch2/internal/catch_unique_ptr.hpp:35:58: error: expected ‘>’ before ‘<’ token
   35 |         template <typename U, typename = std::enable_if_t<std::is_base_of<T, U>::value>>
      |                                                          ^
In file included from /usr/local/include/catch2/benchmark/detail/catch_complete_invoke.hpp:14,
                 from /usr/local/include/catch2/benchmark/catch_chronometer.hpp:15,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:19,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/internal/catch_meta.hpp:39:37: error: ‘remove_reference_t’ in namespace ‘std’ does not name a template type; did you mean ‘remove_reference’?
   39 |     using FunctionReturnType = std::remove_reference_t<std::remove_cv_t<std::result_of_t<Func(U...)>>>;
      |                                     ^~~~~~~~~~~~~~~~~~
      |                                     remove_reference
In file included from /usr/local/include/catch2/benchmark/catch_chronometer.hpp:15,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:19,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_complete_invoke.hpp:50:28: error: ‘FunctionReturnType’ was not declared in this scope
   50 |             CompleteType_t<FunctionReturnType<Fun, Args...>> complete_invoke(Fun&& fun, Args&&... args) {
      |                            ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/detail/catch_complete_invoke.hpp:50:56: error: template argument 1 is invalid
   50 |             CompleteType_t<FunctionReturnType<Fun, Args...>> complete_invoke(Fun&& fun, Args&&... args) {
      |                                                        ^~~
/usr/local/include/catch2/benchmark/detail/catch_complete_invoke.hpp:50:59: error: expected unqualified-id before ‘>’ token
   50 |             CompleteType_t<FunctionReturnType<Fun, Args...>> complete_invoke(Fun&& fun, Args&&... args) {
      |                                                           ^~
In file included from /usr/local/include/catch2/benchmark/catch_chronometer.hpp:15,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:19,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_complete_invoke.hpp:57:32: error: ‘FunctionReturnType’ was not declared in this scope
   57 |         Detail::CompleteType_t<FunctionReturnType<Fun>> user_code(Fun&& fun) {
      |                                ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/detail/catch_complete_invoke.hpp:57:51: error: template argument 1 is invalid
   57 |         Detail::CompleteType_t<FunctionReturnType<Fun>> user_code(Fun&& fun) {
      |                                                   ^~~
/usr/local/include/catch2/benchmark/detail/catch_complete_invoke.hpp:57:54: error: expected unqualified-id before ‘>’ token
   57 |         Detail::CompleteType_t<FunctionReturnType<Fun>> user_code(Fun&& fun) {
      |                                                      ^~
In file included from /usr/local/include/catch2/benchmark/detail/catch_measure.hpp:15,
                 from /usr/local/include/catch2/benchmark/detail/catch_run_for_at_least.hpp:15,
                 from /usr/local/include/catch2/benchmark/catch_execution_plan.hpp:18,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:22,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_timing.hpp:27:78: error: ‘FunctionReturnType’ was not declared in this scope
   27 |         using TimingOf = Timing<ClockDuration<Clock>, Detail::CompleteType_t<FunctionReturnType<Func, Args...>>>;
      |                                                                              ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/detail/catch_timing.hpp:27:107: error: template argument 1 is invalid
   27 |         using TimingOf = Timing<ClockDuration<Clock>, Detail::CompleteType_t<FunctionReturnType<Func, Args...>>>;
      |                                                                                                           ^~~
/usr/local/include/catch2/benchmark/detail/catch_timing.hpp:27:110: error: template argument 2 is invalid
   27 |         using TimingOf = Timing<ClockDuration<Clock>, Detail::CompleteType_t<FunctionReturnType<Func, Args...>>>;
      |                                                                                                              ^~
In file included from /usr/local/include/catch2/benchmark/detail/catch_run_for_at_least.hpp:15,
                 from /usr/local/include/catch2/benchmark/catch_execution_plan.hpp:18,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:22,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_measure.hpp:23:13: error: ‘TimingOf’ does not name a type; did you mean ‘Timing’?
   23 |             TimingOf<Clock, Fun, Args...> measure(Fun&& fun, Args&&... args) {
      |             ^~~~~~~~
      |             Timing
In file included from /usr/local/include/catch2/benchmark/catch_execution_plan.hpp:18,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:22,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_run_for_at_least.hpp:27:13: error: ‘TimingOf’ does not name a type; did you mean ‘Timing’?
   27 |             TimingOf<Clock, Fun, int> measure_one(Fun&& fun, int iters, std::false_type) {
      |             ^~~~~~~~
      |             Timing
/usr/local/include/catch2/benchmark/detail/catch_run_for_at_least.hpp:31:13: error: ‘TimingOf’ does not name a type; did you mean ‘Timing’?
   31 |             TimingOf<Clock, Fun, Chronometer> measure_one(Fun&& fun, int iters, std::true_type) {
      |             ^~~~~~~~
      |             Timing
In file included from /usr/local/include/catch2/benchmark/catch_execution_plan.hpp:18,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:22,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_run_for_at_least.hpp:46:13: error: ‘TimingOf’ does not name a type; did you mean ‘Timing’?
   46 |             TimingOf<Clock, Fun, run_for_at_least_argument_t<Clock, Fun>>
      |             ^~~~~~~~
      |             Timing
In file included from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:22,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/catch_execution_plan.hpp: In member function ‘std::vector<std::chrono::duration<double, typename Clock::period> > Catch::Benchmark::ExecutionPlan<Duration>::run(const Catch::IConfig&, Catch::Benchmark::Environment<std::chrono::duration<double, typename Clock::period> >) const’:
/usr/local/include/catch2/benchmark/catch_execution_plan.hpp:40:25: error: ‘run_for_at_least’ is not a member of ‘Catch::Benchmark::Detail’
   40 |                 Detail::run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(warmup_time), warmup_iterations, Detail::repeat(now<Clock>{}));
      |                         ^~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/catch_execution_plan.hpp:40:47: error: expected primary-expression before ‘>’ token
   40 |                 Detail::run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(warmup_time), warmup_iterations, Detail::repeat(now<Clock>{}));
      |                                               ^
In file included from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:23,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp: In function ‘int Catch::Benchmark::Detail::warmup()’:
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:56:24: error: ‘run_for_at_least’ was not declared in this scope
   56 |                 return run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(warmup_time), warmup_seed, &resolution<Clock>)
      |                        ^~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:56:46: error: expected primary-expression before ‘>’ token
   56 |                 return run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(warmup_time), warmup_seed, &resolution<Clock>)
      |                                              ^
In file included from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:23,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp: In function ‘Catch::Benchmark::EnvironmentEstimate<std::chrono::duration<double, typename Clock::period> > Catch::Benchmark::Detail::estimate_clock_resolution(int)’:
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:61:26: error: ‘run_for_at_least’ was not declared in this scope
   61 |                 auto r = run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(clock_resolution_estimation_time), iterations, &resolution<Clock>)
      |                          ^~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:61:48: error: expected primary-expression before ‘>’ token
   61 |                 auto r = run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(clock_resolution_estimation_time), iterations, &resolution<Clock>)
      |                                                ^
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp: In lambda function:
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:74:36: error: ‘measure’ is not a member of ‘Catch::Benchmark::Detail’
   74 |                     return Detail::measure<Clock>([k] {
      |                                    ^~~~~~~
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:74:49: error: expected primary-expression before ‘>’ token
   74 |                     return Detail::measure<Clock>([k] {
      |                                                 ^
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp: In function ‘Catch::Benchmark::EnvironmentEstimate<std::chrono::duration<double, typename Clock::period> > Catch::Benchmark::Detail::estimate_clock_cost(Catch::Benchmark::FloatDuration<Clock>)’:
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:83:28: error: ‘run_for_at_least’ was not declared in this scope
   83 |                 auto&& r = run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(clock_cost_estimation_time), iters, time_clock);
      |                            ^~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/detail/catch_estimate_clock.hpp:83:50: error: expected primary-expression before ‘>’ token
   83 |                 auto&& r = run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(clock_cost_estimation_time), iters, time_clock);
      |                                                  ^
In file included from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/benchmark/catch_benchmark.hpp: In member function ‘Catch::Benchmark::ExecutionPlan<std::chrono::duration<double, typename Clock::period> > Catch::Benchmark::Benchmark::prepare(const Catch::IConfig&, Catch::Benchmark::Environment<std::chrono::duration<double, typename Clock::period> >) const’:
/usr/local/include/catch2/benchmark/catch_benchmark.hpp:49:39: error: ‘run_for_at_least’ is not a member of ‘Catch::Benchmark::Detail’
   49 |                 auto&& test = Detail::run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(run_time), 1, fun);
      |                                       ^~~~~~~~~~~~~~~~
/usr/local/include/catch2/benchmark/catch_benchmark.hpp:49:61: error: expected primary-expression before ‘>’ token
   49 |                 auto&& test = Detail::run_for_at_least<Clock>(std::chrono::duration_cast<ClockDuration<Clock>>(run_time), 1, fun);
      |                                                             ^
make[2]: Leaving directory '....../libopenshot/build'
make  -f src/CMakeFiles/openshot.dir/build.make src/CMakeFiles/openshot.dir/build
In file included from /usr/local/include/catch2/catch_approx.hpp:11,
                 from /usr/local/include/catch2/catch.hpp:26,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/catch_tostring.hpp: At global scope:
/usr/local/include/catch2/catch_tostring.hpp:76:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   76 |         std::enable_if_t<
      |              ^~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:76:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
   76 |         std::enable_if_t<
      |         ^~~
/usr/local/include/catch2/catch_tostring.hpp:82:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   82 |         std::enable_if_t<
      |              ^~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:82:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
   82 |         std::enable_if_t<
      |         ^~~
/usr/local/include/catch2/catch_tostring.hpp:90:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   90 |         std::enable_if_t<
      |              ^~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:90:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
   90 |         std::enable_if_t<
      |         ^~~
/usr/local/include/catch2/catch_tostring.hpp:116:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  116 |         std::enable_if_t<::Catch::Detail::IsStreamInsertable<Fake>::value, std::string>
      |              ^~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:116:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
  116 |         std::enable_if_t<::Catch::Detail::IsStreamInsertable<Fake>::value, std::string>
      |         ^~~
/usr/local/include/catch2/catch_tostring.hpp:127:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  127 |         std::enable_if_t<!::Catch::Detail::IsStreamInsertable<Fake>::value, std::string>
      |              ^~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:127:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
  127 |         std::enable_if_t<!::Catch::Detail::IsStreamInsertable<Fake>::value, std::string>
      |         ^~~
/usr/local/include/catch2/catch_tostring.hpp: In function ‘std::string Catch::Detail::stringify(const T&)’:
/usr/local/include/catch2/catch_tostring.hpp:143:46: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
  143 |             return ::Catch::StringMaker<std::remove_cv_t<std::remove_reference_t<T>>>::convert(e);
      |                                              ^~~~~~~~~~~
      |                                              remove_cv
/usr/local/include/catch2/catch_tostring.hpp:143:46: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
  143 |             return ::Catch::StringMaker<std::remove_cv_t<std::remove_reference_t<T>>>::convert(e);
      |                                              ^~~~~~~~~~~
      |                                              remove_cv
/usr/local/include/catch2/catch_tostring.hpp:143:63: error: ‘remove_reference_t’ is not a member of ‘std’; did you mean ‘remove_reference’?
  143 |             return ::Catch::StringMaker<std::remove_cv_t<std::remove_reference_t<T>>>::convert(e);
      |                                                               ^~~~~~~~~~~~~~~~~~
      |                                                               remove_reference
/usr/local/include/catch2/catch_tostring.hpp:143:82: error: template argument 1 is invalid
  143 |             return ::Catch::StringMaker<std::remove_cv_t<std::remove_reference_t<T>>>::convert(e);
      |                                                                                  ^
/usr/local/include/catch2/catch_tostring.hpp:143:85: error: expected primary-expression before ‘>’ token
  143 |             return ::Catch::StringMaker<std::remove_cv_t<std::remove_reference_t<T>>>::convert(e);
      |                                                                                     ^
/usr/local/include/catch2/catch_tostring.hpp:143:88: error: ‘::convert’ has not been declared
  143 |             return ::Catch::StringMaker<std::remove_cv_t<std::remove_reference_t<T>>>::convert(e);
      |                                                                                        ^~~~~~~
/usr/local/include/catch2/catch_tostring.hpp: In function ‘std::string Catch::Detail::convertUnknownEnumToString(E)’:
/usr/local/include/catch2/catch_tostring.hpp:148:64: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’?
  148 |             return ::Catch::Detail::stringify(static_cast<std::underlying_type_t<E>>(e));
      |                                                                ^~~~~~~~~~~~~~~~~
      |                                                                underlying_type
/usr/local/include/catch2/catch_tostring.hpp:148:81: error: expected ‘>’ before ‘<’ token
  148 |             return ::Catch::Detail::stringify(static_cast<std::underlying_type_t<E>>(e));
      |                                                                                 ^
/usr/local/include/catch2/catch_tostring.hpp:148:81: error: expected ‘(’ before ‘<’ token
  148 |             return ::Catch::Detail::stringify(static_cast<std::underlying_type_t<E>>(e));
      |                                                                                 ^
      |                                                                                 (
/usr/local/include/catch2/catch_tostring.hpp:148:81: error: expected primary-expression before ‘<’ token
/usr/local/include/catch2/catch_tostring.hpp:148:83: error: expected primary-expression before ‘>>’ token
  148 |             return ::Catch::Detail::stringify(static_cast<std::underlying_type_t<E>>(e));
      |                                                                                   ^~
/usr/local/include/catch2/catch_tostring.hpp: In static member function ‘static std::string Catch::StringMaker<bool>::convert(bool)’:
/usr/local/include/catch2/catch_tostring.hpp:268:34: error: ‘string_literals’ is not a namespace-name
  268 |             using namespace std::string_literals;
      |                                  ^~~~~~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:269:24: error: unable to find string literal operator ‘operator""s’ with ‘const char [5]’, ‘long unsigned int’ arguments
  269 |             return b ? "true"s : "false"s;
      |                        ^~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:269:34: error: unable to find string literal operator ‘operator""s’ with ‘const char [6]’, ‘long unsigned int’ arguments
  269 |             return b ? "true"s : "false"s;
      |                                  ^~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp: In static member function ‘static std::string Catch::StringMaker<std::nullptr_t>::convert(std::nullptr_t)’:
/usr/local/include/catch2/catch_tostring.hpp:289:34: error: ‘string_literals’ is not a namespace-name
  289 |             using namespace std::string_literals;
      |                                  ^~~~~~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:290:20: error: unable to find string literal operator ‘operator""s’ with ‘const char [8]’, ‘long unsigned int’ arguments
  290 |             return "nullptr"s;
      |                    ^~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp: At global scope:
/usr/local/include/catch2/catch_tostring.hpp:527:32: error: ‘enable_if_t’ is not a member of ‘std’
  527 |     struct StringMaker<R, std::enable_if_t<is_range<R>::value && !::Catch::Detail::IsStreamInsertable<R>::value>> {
      |                                ^~~~~~~~~~~
/usr/local/include/catch2/catch_tostring.hpp:527:32: note: ‘std::enable_if_t’ is only available from C++14 onwards
/usr/local/include/catch2/catch_tostring.hpp:527:32: error: ‘enable_if_t’ is not a member of ‘std’
/usr/local/include/catch2/catch_tostring.hpp:527:32: note: ‘std::enable_if_t’ is only available from C++14 onwards
/usr/local/include/catch2/catch_tostring.hpp:527:107: error: type/value mismatch at argument 2 in template parameter list for ‘template<class T, class> struct Catch::StringMaker’
  527 |     struct StringMaker<R, std::enable_if_t<is_range<R>::value && !::Catch::Detail::IsStreamInsertable<R>::value>> {
      |                                                                                                           ^~~~~
/usr/local/include/catch2/catch_tostring.hpp:527:107: note:   expected a type, got ‘((<expression error> < Catch::is_range<T>::value) && (! Catch::Detail::IsStreamInsertable<T>::value))’
/usr/local/include/catch2/catch_tostring.hpp:527:112: error: expected unqualified-id before ‘>’ token
  527 |     struct StringMaker<R, std::enable_if_t<is_range<R>::value && !::Catch::Detail::IsStreamInsertable<R>::value>> {
      |                                                                                                                ^~
In file included from /usr/local/include/catch2/catch.hpp:26,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/catch_approx.hpp:32:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   32 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:32:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   32 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:32:58: error: expected ‘>’ before ‘<’ token
   32 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:41:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   41 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:41:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   41 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:41:58: error: expected ‘>’ before ‘<’ token
   41 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:46:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   46 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:46:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   46 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:46:58: error: expected ‘>’ before ‘<’ token
   46 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:52:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   52 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:52:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   52 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:52:58: error: expected ‘>’ before ‘<’ token
   52 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:57:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   57 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:57:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   57 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:57:58: error: expected ‘>’ before ‘<’ token
   57 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:62:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   62 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:62:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   62 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:62:58: error: expected ‘>’ before ‘<’ token
   62 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:67:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   67 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:67:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   67 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:67:58: error: expected ‘>’ before ‘<’ token
   67 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:72:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   72 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:72:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   72 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:72:58: error: expected ‘>’ before ‘<’ token
   72 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:77:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   77 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:77:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   77 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:77:58: error: expected ‘>’ before ‘<’ token
   77 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:82:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   82 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:82:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   82 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:82:58: error: expected ‘>’ before ‘<’ token
   82 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:87:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   87 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:87:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   87 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:87:58: error: expected ‘>’ before ‘<’ token
   87 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:94:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   94 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:94:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
   94 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:94:58: error: expected ‘>’ before ‘<’ token
   94 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
/usr/local/include/catch2/catch_approx.hpp:101:47: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  101 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                               ^~~~~~~~~~~
/usr/local/include/catch2/catch_approx.hpp:101:42: note: ‘std::enable_if_t’ is only available from C++14 onwards
  101 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                          ^~~
/usr/local/include/catch2/catch_approx.hpp:101:58: error: expected ‘>’ before ‘<’ token
  101 |         template <typename T, typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                                          ^
make[2]: Entering directory '....../libopenshot/build'
make[2]: Nothing to be done for 'src/CMakeFiles/openshot.dir/build'.
make[2]: Leaving directory '....../libopenshot/build'
[ 63%] Built target openshot
make  -f examples/CMakeFiles/openshot-player_autogen.dir/build.make examples/CMakeFiles/openshot-player_autogen.dir/depend
make  -f examples/CMakeFiles/openshot-html-example.dir/build.make examples/CMakeFiles/openshot-html-example.dir/depend
make  -f examples/CMakeFiles/openshot-example.dir/build.make examples/CMakeFiles/openshot-example.dir/depend
make[2]: Entering directory '....../libopenshot/build'
cd ....../libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" ....../libopenshot ....../libopenshot/examples ....../libopenshot/build ....../libopenshot/build/examples ....../libopenshot/build/examples/CMakeFiles/openshot-player_autogen.dir/DependInfo.cmake --color=
make  -f bindings/python/CMakeFiles/pyopenshot.dir/build.make bindings/python/CMakeFiles/pyopenshot.dir/depend
make[2]: Entering directory '....../libopenshot/build'
cd ....../libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" ....../libopenshot ....../libopenshot/examples ....../libopenshot/build ....../libopenshot/build/examples ....../libopenshot/build/examples/CMakeFiles/openshot-html-example.dir/DependInfo.cmake --color=
make  -f bindings/ruby/CMakeFiles/rbopenshot.dir/build.make bindings/ruby/CMakeFiles/rbopenshot.dir/depend
make[2]: Entering directory '....../libopenshot/build'
cd ....../libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" ....../libopenshot ....../libopenshot/examples ....../libopenshot/build ....../libopenshot/build/examples ....../libopenshot/build/examples/CMakeFiles/openshot-example.dir/DependInfo.cmake --color=
make[2]: Entering directory '....../libopenshot/build'
cd ....../libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" ....../libopenshot ....../libopenshot/bindings/python ....../libopenshot/build ....../libopenshot/build/bindings/python ....../libopenshot/build/bindings/python/CMakeFiles/pyopenshot.dir/DependInfo.cmake --color=
make[2]: Entering directory '....../libopenshot/build'
cd ....../libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" ....../libopenshot ....../libopenshot/bindings/ruby ....../libopenshot/build ....../libopenshot/build/bindings/ruby ....../libopenshot/build/bindings/ruby/CMakeFiles/rbopenshot.dir/DependInfo.cmake --color=
make[2]: Leaving directory '....../libopenshot/build'
make  -f examples/CMakeFiles/openshot-player_autogen.dir/build.make examples/CMakeFiles/openshot-player_autogen.dir/build
In file included from /usr/local/include/catch2/internal/catch_assertion_handler.hpp:12,
                 from /usr/local/include/catch2/internal/catch_test_macro_impl.hpp:11,
                 from /usr/local/include/catch2/catch_test_macros.hpp:11,
                 from /usr/local/include/catch2/catch_template_test_macros.hpp:20,
                 from /usr/local/include/catch2/catch.hpp:36,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/internal/catch_decomposer.hpp:186:38: error: ‘std::enable_if_t’ has not been declared
  186 |         template<typename RhsT, std::enable_if_t<!std::is_arithmetic<std::remove_reference_t<RhsT>>::value, int> = 0>
      |                                      ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:186:49: error: expected ‘>’ before ‘<’ token
  186 |         template<typename RhsT, std::enable_if_t<!std::is_arithmetic<std::remove_reference_t<RhsT>>::value, int> = 0>
      |                                                 ^
/usr/local/include/catch2/internal/catch_decomposer.hpp:190:38: error: ‘std::enable_if_t’ has not been declared
  190 |         template<typename RhsT, std::enable_if_t<std::is_arithmetic<RhsT>::value, int> = 0>
      |                                      ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:190:49: error: expected ‘>’ before ‘<’ token
  190 |         template<typename RhsT, std::enable_if_t<std::is_arithmetic<RhsT>::value, int> = 0>
      |                                                 ^
/usr/local/include/catch2/internal/catch_decomposer.hpp:195:38: error: ‘std::enable_if_t’ has not been declared
  195 |         template<typename RhsT, std::enable_if_t<!std::is_arithmetic<std::remove_reference_t<RhsT>>::value, int> = 0>
      |                                      ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:195:49: error: expected ‘>’ before ‘<’ token
  195 |         template<typename RhsT, std::enable_if_t<!std::is_arithmetic<std::remove_reference_t<RhsT>>::value, int> = 0>
      |                                                 ^
/usr/local/include/catch2/internal/catch_decomposer.hpp:199:38: error: ‘std::enable_if_t’ has not been declared
  199 |         template<typename RhsT, std::enable_if_t<std::is_arithmetic<RhsT>::value, int> = 0>
      |                                      ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:199:49: error: expected ‘>’ before ‘<’ token
  199 |         template<typename RhsT, std::enable_if_t<std::is_arithmetic<RhsT>::value, int> = 0>
      |                                                 ^
/usr/local/include/catch2/internal/catch_decomposer.hpp:214:9: error: ‘std::enable_if_t’ has not been declared
  214 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:214:9: error: expected ‘>’ before ‘<’ token
  214 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:214:9: error: ‘std::enable_if_t’ has not been declared
  214 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:214:9: error: expected ‘>’ before ‘<’ token
  214 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:215:9: error: ‘std::enable_if_t’ has not been declared
  215 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:215:9: error: expected ‘>’ before ‘<’ token
  215 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:215:9: error: ‘std::enable_if_t’ has not been declared
  215 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:215:9: error: expected ‘>’ before ‘<’ token
  215 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:216:9: error: ‘std::enable_if_t’ has not been declared
  216 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:216:9: error: expected ‘>’ before ‘<’ token
  216 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:216:9: error: ‘std::enable_if_t’ has not been declared
  216 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:216:9: error: expected ‘>’ before ‘<’ token
  216 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(<=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:217:9: error: ‘std::enable_if_t’ has not been declared
  217 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:217:9: error: expected ‘>’ before ‘<’ token
  217 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:217:9: error: ‘std::enable_if_t’ has not been declared
  217 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:217:9: error: expected ‘>’ before ‘<’ token
  217 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(>=)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:218:9: error: ‘std::enable_if_t’ has not been declared
  218 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(|)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:218:9: error: expected ‘>’ before ‘<’ token
  218 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(|)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:218:9: error: ‘std::enable_if_t’ has not been declared
  218 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(|)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:218:9: error: expected ‘>’ before ‘<’ token
  218 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(|)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:219:9: error: ‘std::enable_if_t’ has not been declared
  219 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(&)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:219:9: error: expected ‘>’ before ‘<’ token
  219 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(&)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:219:9: error: ‘std::enable_if_t’ has not been declared
  219 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(&)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:219:9: error: expected ‘>’ before ‘<’ token
  219 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(&)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:220:9: error: ‘std::enable_if_t’ has not been declared
  220 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(^)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:220:9: error: expected ‘>’ before ‘<’ token
  220 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(^)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:220:9: error: ‘std::enable_if_t’ has not been declared
  220 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(^)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:220:9: error: expected ‘>’ before ‘<’ token
  220 |         CATCH_INTERNAL_DEFINE_EXPRESSION_OPERATOR(^)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:244:35: error: ‘std::enable_if_t’ has not been declared
  244 |         template<typename T, std::enable_if_t<!std::is_arithmetic<std::remove_reference_t<T>>::value, int> = 0>
      |                                   ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:244:46: error: expected ‘>’ before ‘<’ token
  244 |         template<typename T, std::enable_if_t<!std::is_arithmetic<std::remove_reference_t<T>>::value, int> = 0>
      |                                              ^
/usr/local/include/catch2/internal/catch_decomposer.hpp:249:35: error: ‘std::enable_if_t’ has not been declared
  249 |         template<typename T, std::enable_if_t<std::is_arithmetic<T>::value, int> = 0>
      |                                   ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_decomposer.hpp:249:46: error: expected ‘>’ before ‘<’ token
  249 |         template<typename T, std::enable_if_t<std::is_arithmetic<T>::value, int> = 0>
      |                                              ^
Consolidate compiler generated dependencies of target openshot-html-example
Consolidate compiler generated dependencies of target openshot-example
make[2]: Entering directory '....../libopenshot/build'
Consolidate compiler generated dependencies of target pyopenshot
Consolidate compiler generated dependencies of target rbopenshot
In file included from /usr/local/include/catch2/generators/catch_generators_all.hpp:25,
                 from /usr/local/include/catch2/catch.hpp:46,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/generators/catch_generators.hpp:107:52: error: ‘decay_t’ in namespace ‘std’ does not name a template type; did you mean ‘decay’?
  107 |     template <typename T, typename DecayedT = std::decay_t<T>>
      |                                                    ^~~~~~~
      |                                                    decay
/usr/local/include/catch2/generators/catch_generators.hpp:107:59: error: expected ‘>’ before ‘<’ token
  107 |     template <typename T, typename DecayedT = std::decay_t<T>>
      |                                                           ^
/usr/local/include/catch2/generators/catch_generators.hpp:133:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  133 |         std::enable_if_t<!std::is_same<std::decay_t<U>, T>::value>
      |              ^~~~~~~~~~~
/usr/local/include/catch2/generators/catch_generators.hpp:133:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
  133 |         std::enable_if_t<!std::is_same<std::decay_t<U>, T>::value>
      |         ^~~
make[2]: Leaving directory '....../libopenshot/build'
make  -f examples/CMakeFiles/openshot-html-example.dir/build.make examples/CMakeFiles/openshot-html-example.dir/build
/usr/local/include/catch2/generators/catch_generators.hpp:173:38: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  173 |     GeneratorWrapper<std::tuple<std::decay_t<Ts>...>>
      |                                      ^~~~~~~
      |                                      decay
/usr/local/include/catch2/generators/catch_generators.hpp:173:38: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  173 |     GeneratorWrapper<std::tuple<std::decay_t<Ts>...>>
      |                                      ^~~~~~~
      |                                      decay
/usr/local/include/catch2/generators/catch_generators.hpp:173:48: error: template argument 1 is invalid
  173 |     GeneratorWrapper<std::tuple<std::decay_t<Ts>...>>
      |                                                ^
/usr/local/include/catch2/generators/catch_generators.hpp:173:49: error: expected parameter pack before ‘...’
  173 |     GeneratorWrapper<std::tuple<std::decay_t<Ts>...>>
      |                                                 ^~~
/usr/local/include/catch2/generators/catch_generators.hpp:173:49: error: template argument 1 is invalid
/usr/local/include/catch2/generators/catch_generators.hpp:173:52: error: expected unqualified-id before ‘>’ token
  173 |     GeneratorWrapper<std::tuple<std::decay_t<Ts>...>>
      |                                                    ^~
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:88: error: template argument 1 is invalid
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                        ^
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:89: error: template argument 1 is invalid
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                         ^~
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:89: error: template argument 1 is invalid
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                         ^~
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:89: error: template argument 1 is invalid
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                         ^~
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
make[2]: Leaving directory '....../libopenshot/build'
make  -f examples/CMakeFiles/openshot-example.dir/build.make examples/CMakeFiles/openshot-example.dir/build
/usr/local/include/catch2/generators/catch_generators.hpp:191:80: error: ‘decay_t’ is not a member of ‘std’; did you mean ‘decay’?
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                ^~~~~~~
      |                                                                                decay
/usr/local/include/catch2/generators/catch_generators.hpp:191:89: error: template argument 1 is invalid
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                                         ^~
/usr/local/include/catch2/generators/catch_generators.hpp:191:64: error: invalid use of template-name ‘Catch::Generators::Generators’ without an argument list
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                ^~~~~~~~~~
/usr/local/include/catch2/generators/catch_generators.hpp:191:64: note: class template argument deduction is only available with ‘-std=c++17’ or ‘-std=gnu++17’
/usr/local/include/catch2/generators/catch_generators.hpp:119:11: note: ‘template<class T> class Catch::Generators::Generators’ declared here
  119 |     class Generators : public IGenerator<T> {
      |           ^~~~~~~~~~
/usr/local/include/catch2/generators/catch_generators.hpp:191:74: error: expected initializer before ‘<’ token
  191 |     auto makeGenerators( T&& val, Gs &&... moreGenerators ) -> Generators<std::decay_t<T>> {
      |                                                                          ^
In file included from /usr/local/include/catch2/generators/catch_generators_all.hpp:26,
                 from /usr/local/include/catch2/catch.hpp:46,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/generators/catch_generators_adapters.hpp:177:55: error: ‘FunctionReturnType’ does not name a type
  177 |     template <typename Func, typename U, typename T = FunctionReturnType<Func, U>>
      |                                                       ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/generators/catch_generators_adapters.hpp:177:73: error: expected ‘>’ before ‘<’ token
  177 |     template <typename Func, typename U, typename T = FunctionReturnType<Func, U>>
      |                                                                         ^
make[2]: Entering directory '....../libopenshot/build'
make[2]: Nothing to be done for 'examples/CMakeFiles/openshot-html-example.dir/build'.
make[2]: Leaving directory '....../libopenshot/build'
make[2]: Leaving directory '....../libopenshot/build'
make[2]: Leaving directory '....../libopenshot/build'
make  -f bindings/ruby/CMakeFiles/rbopenshot.dir/build.make bindings/ruby/CMakeFiles/rbopenshot.dir/build
make  -f bindings/python/CMakeFiles/pyopenshot.dir/build.make bindings/python/CMakeFiles/pyopenshot.dir/build
[ 63%] Automatic MOC for target openshot-player
make[2]: Entering directory '....../libopenshot/build'
make[2]: Nothing to be done for 'examples/CMakeFiles/openshot-example.dir/build'.
make[2]: Leaving directory '....../libopenshot/build'
cd ....../libopenshot/build/examples && /usr/bin/cmake -E cmake_autogen ....../libopenshot/build/examples/CMakeFiles/openshot-player_autogen.dir/AutogenInfo.json Release
[ 64%] Built target openshot-example
[ 65%] Built target openshot-html-example
make[2]: Entering directory '....../libopenshot/build'
make[2]: Nothing to be done for 'bindings/ruby/CMakeFiles/rbopenshot.dir/build'.
make[2]: Leaving directory '....../libopenshot/build'
make[2]: Entering directory '....../libopenshot/build'
make[2]: Nothing to be done for 'bindings/python/CMakeFiles/pyopenshot.dir/build'.
make[2]: Leaving directory '....../libopenshot/build'
make[2]: Leaving directory '....../libopenshot/build'
[ 68%] Built target pyopenshot
[ 68%] Built target openshot-player_autogen
[ 70%] Built target rbopenshot
make  -f examples/CMakeFiles/openshot-player.dir/build.make examples/CMakeFiles/openshot-player.dir/depend
make[2]: Entering directory '....../libopenshot/build'
cd ....../libopenshot/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" ....../libopenshot ....../libopenshot/examples ....../libopenshot/build ....../libopenshot/build/examples ....../libopenshot/build/examples/CMakeFiles/openshot-player.dir/DependInfo.cmake --color=
Consolidate compiler generated dependencies of target openshot-player
In file included from /usr/local/include/catch2/generators/catch_generators_all.hpp:27,
                 from /usr/local/include/catch2/catch.hpp:46,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/generators/catch_generators_random.hpp:67:6: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   67 | std::enable_if_t<std::is_integral<T>::value && !std::is_same<T, bool>::value,
      |      ^~~~~~~~~~~
/usr/local/include/catch2/generators/catch_generators_random.hpp:67:1: note: ‘std::enable_if_t’ is only available from C++14 onwards
   67 | std::enable_if_t<std::is_integral<T>::value && !std::is_same<T, bool>::value,
      | ^~~
/usr/local/include/catch2/generators/catch_generators_random.hpp:76:6: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   76 | std::enable_if_t<std::is_floating_point<T>::value,
      |      ^~~~~~~~~~~
/usr/local/include/catch2/generators/catch_generators_random.hpp:76:1: note: ‘std::enable_if_t’ is only available from C++14 onwards
   76 | std::enable_if_t<std::is_floating_point<T>::value,
      | ^~~
make[2]: Leaving directory '....../libopenshot/build'
make  -f examples/CMakeFiles/openshot-player.dir/build.make examples/CMakeFiles/openshot-player.dir/build
make[2]: Entering directory '....../libopenshot/build'
make[2]: Nothing to be done for 'examples/CMakeFiles/openshot-player.dir/build'.
make[2]: Leaving directory '....../libopenshot/build'
[ 72%] Built target openshot-player
In file included from /usr/local/include/catch2/catch.hpp:108,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/internal/catch_xmlwriter.hpp:71:48: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   71 |                       typename = typename std::enable_if_t<
      |                                                ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_xmlwriter.hpp:71:48: note: ‘std::enable_if_t’ is only available from C++14 onwards
/usr/local/include/catch2/internal/catch_xmlwriter.hpp:71:59: error: expected ‘>’ before ‘<’ token
   71 |                       typename = typename std::enable_if_t<
      |                                                           ^
In file included from /usr/local/include/catch2/catch.hpp:108,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/internal/catch_xmlwriter.hpp:112:44: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  112 |                   typename = typename std::enable_if_t<
      |                                            ^~~~~~~~~~~
/usr/local/include/catch2/internal/catch_xmlwriter.hpp:112:44: note: ‘std::enable_if_t’ is only available from C++14 onwards
/usr/local/include/catch2/internal/catch_xmlwriter.hpp:112:55: error: expected ‘>’ before ‘<’ token
  112 |                   typename = typename std::enable_if_t<
      |                                                       ^
In file included from /usr/local/include/catch2/matchers/catch_matchers_container_properties.hpp:11,
                 from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:75:18: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
   75 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                  ^~~~~~~~~~~
      |                  remove_cv
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:75:18: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
   75 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                  ^~~~~~~~~~~
      |                  remove_cv
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:75:35: error: ‘remove_reference_t’ is not a member of ‘std’; did you mean ‘remove_reference’?
   75 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                                   ^~~~~~~~~~~~~~~~~~
      |                                   remove_reference
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:75:54: error: template argument 2 is invalid
   75 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                                                      ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:79:50: error: ‘is_generic_matcher’ was not declared in this scope
   79 |         using are_generic_matchers = conjunction<is_generic_matcher<Ts>...>;
      |                                                  ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:79:71: error: template argument 1 is invalid
   79 |         using are_generic_matchers = conjunction<is_generic_matcher<Ts>...>;
      |                                                                       ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:84:18: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
   84 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                  ^~~~~~~~~~~
      |                  remove_cv
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:84:18: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
   84 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                  ^~~~~~~~~~~
      |                  remove_cv
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:84:35: error: ‘remove_reference_t’ is not a member of ‘std’; did you mean ‘remove_reference’?
   84 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                                   ^~~~~~~~~~~~~~~~~~
      |                                   remove_reference
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:84:54: error: template argument 2 is invalid
   84 |             std::remove_cv_t<std::remove_reference_t<T>>
      |                                                      ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:89:74: error: ‘std::index_sequence’ has not been declared
   89 |         bool match_all_of(Arg&&, std::array<void const*, N> const&, std::index_sequence<>) {
      |                                                                          ^~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:89:88: error: expected ‘,’ or ‘...’ before ‘<’ token
   89 |         bool match_all_of(Arg&&, std::array<void const*, N> const&, std::index_sequence<>) {
      |                                                                                        ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:94:87: error: ‘std::index_sequence’ has not been declared
   94 |         bool match_all_of(Arg&& arg, std::array<void const*, N> const& matchers, std::index_sequence<Idx, Indices...>) {
      |                                                                                       ^~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:94:101: error: expected ‘,’ or ‘...’ before ‘<’ token
   94 |         bool match_all_of(Arg&& arg, std::array<void const*, N> const& matchers, std::index_sequence<Idx, Indices...>) {
      |                                                                                                     ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: In function ‘bool Catch::Matchers::Detail::match_all_of(Arg&&, const std::array<const void*, N>&, int)’:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:95:119: error: ‘index_sequence’ is not a member of ‘std’
   95 |             return static_cast<T const*>(matchers[Idx])->match(arg) && match_all_of<MatcherTs...>(arg, matchers, std::index_sequence<Indices...>{});
      |                                                                                                                       ^~~~~~~~~~~~~~
In file included from /usr/local/include/catch2/matchers/catch_matchers_container_properties.hpp:11,
                 from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: At global scope:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:100:74: error: ‘std::index_sequence’ has not been declared
  100 |         bool match_any_of(Arg&&, std::array<void const*, N> const&, std::index_sequence<>) {
      |                                                                          ^~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:100:88: error: expected ‘,’ or ‘...’ before ‘<’ token
  100 |         bool match_any_of(Arg&&, std::array<void const*, N> const&, std::index_sequence<>) {
      |                                                                                        ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:105:87: error: ‘std::index_sequence’ has not been declared
  105 |         bool match_any_of(Arg&& arg, std::array<void const*, N> const& matchers, std::index_sequence<Idx, Indices...>) {
      |                                                                                       ^~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:105:101: error: expected ‘,’ or ‘...’ before ‘<’ token
  105 |         bool match_any_of(Arg&& arg, std::array<void const*, N> const& matchers, std::index_sequence<Idx, Indices...>) {
      |                                                                                                     ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: In function ‘bool Catch::Matchers::Detail::match_any_of(Arg&&, const std::array<const void*, N>&, int)’:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:106:119: error: ‘index_sequence’ is not a member of ‘std’
  106 |             return static_cast<T const*>(matchers[Idx])->match(arg) || match_any_of<MatcherTs...>(arg, matchers, std::index_sequence<Indices...>{});
      |                                                                                                                       ^~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: At global scope:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:112:131: error: ‘std::index_sequence’ has not been declared
  112 |         std::string describe_multi_matcher(StringRef combine, std::array<void const*, sizeof...(MatcherTs)> const& matchers, std::index_sequence<Idx...>) {
      |                                                                                                                                   ^~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:112:145: error: expected ‘,’ or ‘...’ before ‘<’ token
  112 |         std::string describe_multi_matcher(StringRef combine, std::array<void const*, sizeof...(MatcherTs)> const& matchers, std::index_sequence<Idx...>) {
      |                                                                                                                                                 ^
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:153:25: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  153 |             friend std::enable_if_t<is_matcher<MatcherRHS>::value,
      |                         ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:153:20: note: ‘std::enable_if_t’ is only available from C++14 onwards
  153 |             friend std::enable_if_t<is_matcher<MatcherRHS>::value,
      |                    ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:162:25: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  162 |             friend std::enable_if_t<is_matcher<MatcherLHS>::value,
      |                         ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:162:20: note: ‘std::enable_if_t’ is only available from C++14 onwards
  162 |             friend std::enable_if_t<is_matcher<MatcherLHS>::value,
      |                    ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: In member function ‘bool Catch::Matchers::Detail::MatchAllOfGeneric<MatcherTs>::match(Arg&&) const’:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:133:73: error: ‘index_sequence_for’ is not a member of ‘std’
  133 |                 return match_all_of<MatcherTs...>(arg, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                         ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:133:101: error: expected primary-expression before ‘...’ token
  133 |                 return match_all_of<MatcherTs...>(arg, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                                                     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: In member function ‘std::string Catch::Matchers::Detail::MatchAllOfGeneric<MatcherTs>::describe() const’:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:137:90: error: ‘index_sequence_for’ is not a member of ‘std’
  137 |                 return describe_multi_matcher<MatcherTs...>(" and "_sr, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                                          ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:137:118: error: expected primary-expression before ‘...’ token
  137 |                 return describe_multi_matcher<MatcherTs...>(" and "_sr, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                                                                      ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: At global scope:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:202:25: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  202 |             friend std::enable_if_t<is_matcher<MatcherRHS>::value,
      |                         ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:202:20: note: ‘std::enable_if_t’ is only available from C++14 onwards
  202 |             friend std::enable_if_t<is_matcher<MatcherRHS>::value,
      |                    ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:211:25: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  211 |             friend std::enable_if_t<is_matcher<MatcherLHS>::value,
      |                         ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:211:20: note: ‘std::enable_if_t’ is only available from C++14 onwards
  211 |             friend std::enable_if_t<is_matcher<MatcherLHS>::value,
      |                    ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: In member function ‘bool Catch::Matchers::Detail::MatchAnyOfGeneric<MatcherTs>::match(Arg&&) const’:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:183:73: error: ‘index_sequence_for’ is not a member of ‘std’
  183 |                 return match_any_of<MatcherTs...>(arg, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                         ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:183:101: error: expected primary-expression before ‘...’ token
  183 |                 return match_any_of<MatcherTs...>(arg, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                                                     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: In member function ‘std::string Catch::Matchers::Detail::MatchAnyOfGeneric<MatcherTs>::describe() const’:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:187:89: error: ‘index_sequence_for’ is not a member of ‘std’
  187 |                 return describe_multi_matcher<MatcherTs...>(" or "_sr, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                                         ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:187:117: error: expected primary-expression before ‘...’ token
  187 |                 return describe_multi_matcher<MatcherTs...>(" or "_sr, m_matchers, std::index_sequence_for<MatcherTs...>{});
      |                                                                                                                     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp: At global scope:
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:250:10: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  250 |     std::enable_if_t<Detail::are_generic_matchers<MatcherLHS, MatcherRHS>::value, Detail::MatchAllOfGeneric<MatcherLHS, MatcherRHS>>
      |          ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:250:5: note: ‘std::enable_if_t’ is only available from C++14 onwards
  250 |     std::enable_if_t<Detail::are_generic_matchers<MatcherLHS, MatcherRHS>::value, Detail::MatchAllOfGeneric<MatcherLHS, MatcherRHS>>
      |     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:256:10: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  256 |     std::enable_if_t<Detail::are_generic_matchers<MatcherLHS, MatcherRHS>::value, Detail::MatchAnyOfGeneric<MatcherLHS, MatcherRHS>>
      |          ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:256:5: note: ‘std::enable_if_t’ is only available from C++14 onwards
  256 |     std::enable_if_t<Detail::are_generic_matchers<MatcherLHS, MatcherRHS>::value, Detail::MatchAnyOfGeneric<MatcherLHS, MatcherRHS>>
      |     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:263:10: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  263 |     std::enable_if_t<Detail::is_generic_matcher<MatcherT>::value, Detail::MatchNotOfGeneric<MatcherT>>
      |          ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:263:5: note: ‘std::enable_if_t’ is only available from C++14 onwards
  263 |     std::enable_if_t<Detail::is_generic_matcher<MatcherT>::value, Detail::MatchNotOfGeneric<MatcherT>>
      |     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:271:10: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  271 |     std::enable_if_t<Detail::is_generic_matcher<MatcherLHS>::value, Detail::MatchAllOfGeneric<MatcherLHS, MatcherBase<ArgRHS>>>
      |          ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:271:5: note: ‘std::enable_if_t’ is only available from C++14 onwards
  271 |     std::enable_if_t<Detail::is_generic_matcher<MatcherLHS>::value, Detail::MatchAllOfGeneric<MatcherLHS, MatcherBase<ArgRHS>>>
      |     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:277:10: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  277 |     std::enable_if_t<Detail::is_generic_matcher<MatcherRHS>::value, Detail::MatchAllOfGeneric<MatcherBase<ArgLHS>, MatcherRHS>>
      |          ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:277:5: note: ‘std::enable_if_t’ is only available from C++14 onwards
  277 |     std::enable_if_t<Detail::is_generic_matcher<MatcherRHS>::value, Detail::MatchAllOfGeneric<MatcherBase<ArgLHS>, MatcherRHS>>
      |     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:283:10: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  283 |     std::enable_if_t<Detail::is_generic_matcher<MatcherLHS>::value, Detail::MatchAnyOfGeneric<MatcherLHS, MatcherBase<ArgRHS>>>
      |          ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:283:5: note: ‘std::enable_if_t’ is only available from C++14 onwards
  283 |     std::enable_if_t<Detail::is_generic_matcher<MatcherLHS>::value, Detail::MatchAnyOfGeneric<MatcherLHS, MatcherBase<ArgRHS>>>
      |     ^~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:289:10: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  289 |     std::enable_if_t<Detail::is_generic_matcher<MatcherRHS>::value, Detail::MatchAnyOfGeneric<MatcherBase<ArgLHS>, MatcherRHS>>
      |          ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_templated.hpp:289:5: note: ‘std::enable_if_t’ is only available from C++14 onwards
  289 |     std::enable_if_t<Detail::is_generic_matcher<MatcherRHS>::value, Detail::MatchAnyOfGeneric<MatcherBase<ArgLHS>, MatcherRHS>>
      |     ^~~
In file included from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_container_properties.hpp:82:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   82 |         std::enable_if_t<Detail::is_matcher<Matcher>::value,
      |              ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_container_properties.hpp:82:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
   82 |         std::enable_if_t<Detail::is_matcher<Matcher>::value,
      |         ^~~
In file included from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:25,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_contains.hpp: In member function ‘bool Catch::Matchers::ContainsElementMatcher<T, Equality>::match(RangeLike&&) const’:
/usr/local/include/catch2/matchers/catch_matchers_contains.hpp:40:52: error: use of ‘auto’ in lambda parameter declaration only available with ‘-std=c++14’ or ‘-std=gnu++14’
   40 |                                                [&](auto const& elem) {
      |                                                    ^~~~
/usr/local/include/catch2/matchers/catch_matchers_contains.hpp: At global scope:
/usr/local/include/catch2/matchers/catch_matchers_contains.hpp:79:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   79 |         std::enable_if_t<!Detail::is_matcher<T>::value,
      |              ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_contains.hpp:79:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
   79 |         std::enable_if_t<!Detail::is_matcher<T>::value,
      |         ^~~
/usr/local/include/catch2/matchers/catch_matchers_contains.hpp:86:14: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
   86 |         std::enable_if_t<Detail::is_matcher<Matcher>::value,
      |              ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_contains.hpp:86:9: note: ‘std::enable_if_t’ is only available from C++14 onwards
   86 |         std::enable_if_t<Detail::is_matcher<Matcher>::value,
      |         ^~~
In file included from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:28,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_predicate.hpp: In function ‘Catch::Matchers::PredicateMatcher<T, Pred> Catch::Matchers::Predicate(Pred&&, const string&)’:
/usr/local/include/catch2/matchers/catch_matchers_predicate.hpp:52:42: error: ‘FunctionReturnType’ was not declared in this scope
   52 |         static_assert(std::is_same<bool, FunctionReturnType<Pred, T>>::value, "Predicate does not return bool");
      |                                          ^~~~~~~~~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_predicate.hpp:52:67: error: wrong number of template arguments (3, should be 2)
   52 |         static_assert(std::is_same<bool, FunctionReturnType<Pred, T>>::value, "Predicate does not return bool");
      |                                                                   ^
In file included from /usr/local/include/c++/10.3.1/ratio:39,
                 from /usr/local/include/c++/10.3.1/chrono:39,
                 from /usr/local/include/catch2/interfaces/catch_interfaces_config.hpp:13,
                 from /usr/local/include/catch2/benchmark/catch_benchmark.hpp:13,
                 from /usr/local/include/catch2/benchmark/catch_benchmark_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:25,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/c++/10.3.1/type_traits:582:12: note: provided for ‘template<class, class> struct std::is_same’
  582 |     struct is_same;
      |            ^~~~~~~
In file included from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:28,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_predicate.hpp:52:72: error: ‘::value’ has not been declared; did you mean ‘Catch::Generators::value’?
   52 |         static_assert(std::is_same<bool, FunctionReturnType<Pred, T>>::value, "Predicate does not return bool");
      |                                                                        ^~~~~
      |                                                                        Catch::Generators::value
In file included from /usr/local/include/catch2/generators/catch_generators_all.hpp:25,
                 from /usr/local/include/catch2/catch.hpp:46,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/generators/catch_generators.hpp:108:32: note: ‘Catch::Generators::value’ declared here
  108 |     GeneratorWrapper<DecayedT> value( T&& value ) {
      |                                ^~~~~
In file included from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:32,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp: At global scope:
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:117:35: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  117 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                   ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:117:30: note: ‘std::enable_if_t’ is only available from C++14 onwards
  117 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                              ^~~
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:117:46: error: expected ‘>’ before ‘<’ token
  117 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                              ^
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:122:35: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  122 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                   ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:122:30: note: ‘std::enable_if_t’ is only available from C++14 onwards
  122 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                              ^~~
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:122:46: error: expected ‘>’ before ‘<’ token
  122 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                              ^
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:127:35: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
  127 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                   ^~~~~~~~~~~
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:127:30: note: ‘std::enable_if_t’ is only available from C++14 onwards
  127 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                              ^~~
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:127:46: error: expected ‘>’ before ‘<’ token
  127 |         template <typename = std::enable_if_t<std::is_constructible<double, T>::value>>
      |                                              ^
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp: In member function ‘Catch::Matchers::ApproxMatcher<T, AllocComp, AllocMatch>& Catch::Matchers::ApproxMatcher<T, AllocComp, AllocMatch>::epsilon(const T&)’:
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:119:59: error: no matching function for call to ‘Catch::Approx::epsilon(double)’
  119 |             approx.epsilon(static_cast<double>(newEpsilon));
      |                                                           ^
In file included from /usr/local/include/catch2/catch.hpp:26,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/catch_approx.hpp:88:17: note: candidate: ‘template<class T, class> Catch::Approx& Catch::Approx::epsilon(const T&)’
   88 |         Approx& epsilon( T const& newEpsilon ) {
      |                 ^~~~~~~
/usr/local/include/catch2/catch_approx.hpp:88:17: note:   template argument deduction/substitution failed:
In file included from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:32,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp: In member function ‘Catch::Matchers::ApproxMatcher<T, AllocComp, AllocMatch>& Catch::Matchers::ApproxMatcher<T, AllocComp, AllocMatch>::margin(const T&)’:
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:124:57: error: no matching function for call to ‘Catch::Approx::margin(double)’
  124 |             approx.margin(static_cast<double>(newMargin));
      |                                                         ^
In file included from /usr/local/include/catch2/catch.hpp:26,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/catch_approx.hpp:95:17: note: candidate: ‘template<class T, class> Catch::Approx& Catch::Approx::margin(const T&)’
   95 |         Approx& margin( T const& newMargin ) {
      |                 ^~~~~~
/usr/local/include/catch2/catch_approx.hpp:95:17: note:   template argument deduction/substitution failed:
In file included from /usr/local/include/catch2/matchers/catch_matchers_all.hpp:32,
                 from /usr/local/include/catch2/catch.hpp:109,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp: In member function ‘Catch::Matchers::ApproxMatcher<T, AllocComp, AllocMatch>& Catch::Matchers::ApproxMatcher<T, AllocComp, AllocMatch>::scale(const T&)’:
/usr/local/include/catch2/matchers/catch_matchers_vector.hpp:129:55: error: no matching function for call to ‘Catch::Approx::scale(double)’
  129 |             approx.scale(static_cast<double>(newScale));
      |                                                       ^
In file included from /usr/local/include/catch2/catch.hpp:26,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/catch_approx.hpp:102:17: note: candidate: ‘template<class T, class> Catch::Approx& Catch::Approx::scale(const T&)’
  102 |         Approx& scale( T const& newScale ) {
      |                 ^~~~~
/usr/local/include/catch2/catch_approx.hpp:102:17: note:   template argument deduction/substitution failed:
In file included from /usr/local/include/catch2/reporters/catch_reporters_all.hpp:24,
                 from /usr/local/include/catch2/catch.hpp:110,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/reporters/catch_reporter_automake.hpp: In static member function ‘static std::string Catch::AutomakeReporter::getDescription()’:
/usr/local/include/catch2/reporters/catch_reporter_automake.hpp:23:34: error: ‘string_literals’ is not a namespace-name
   23 |             using namespace std::string_literals;
      |                                  ^~~~~~~~~~~~~~~
/usr/local/include/catch2/reporters/catch_reporter_automake.hpp:24:20: error: unable to find string literal operator ‘operator""s’ with ‘const char [58]’, ‘long unsigned int’ arguments
   24 |             return "Reports test results in the format of Automake .trs files"s;
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/include/catch2/reporters/catch_reporters_all.hpp:32,
                 from /usr/local/include/catch2/catch.hpp:110,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/reporters/catch_reporter_sonarqube.hpp: In static member function ‘static std::string Catch::SonarQubeReporter::getDescription()’:
/usr/local/include/catch2/reporters/catch_reporter_sonarqube.hpp:29:34: error: ‘string_literals’ is not a namespace-name
   29 |             using namespace std::string_literals;
      |                                  ^~~~~~~~~~~~~~~
/usr/local/include/catch2/reporters/catch_reporter_sonarqube.hpp:30:20: error: unable to find string literal operator ‘operator""s’ with ‘const char [67]’, ‘long unsigned int’ arguments
   30 |             return "Reports test results in the Generic Test Data SonarQube XML format"s;
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/include/catch2/reporters/catch_reporters_all.hpp:34,
                 from /usr/local/include/catch2/catch.hpp:110,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/reporters/catch_reporter_tap.hpp: In static member function ‘static std::string Catch::TAPReporter::getDescription()’:
/usr/local/include/catch2/reporters/catch_reporter_tap.hpp:24:34: error: ‘string_literals’ is not a namespace-name
   24 |             using namespace std::string_literals;
      |                                  ^~~~~~~~~~~~~~~
/usr/local/include/catch2/reporters/catch_reporter_tap.hpp:25:20: error: unable to find string literal operator ‘operator""s’ with ‘const char [64]’, ‘long unsigned int’ arguments
   25 |             return "Reports test results in TAP format, suitable for test harnesses"s;
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/include/catch2/reporters/catch_reporters_all.hpp:35,
                 from /usr/local/include/catch2/catch.hpp:110,
                 from ....../libopenshot/tests/catch_main.cpp:32:
/usr/local/include/catch2/reporters/catch_reporter_teamcity.hpp: In static member function ‘static std::string Catch::TeamCityReporter::getDescription()’:
/usr/local/include/catch2/reporters/catch_reporter_teamcity.hpp:33:34: error: ‘string_literals’ is not a namespace-name
   33 |             using namespace std::string_literals;
      |                                  ^~~~~~~~~~~~~~~
/usr/local/include/catch2/reporters/catch_reporter_teamcity.hpp:34:20: error: unable to find string literal operator ‘operator""s’ with ‘const char [50]’, ‘long unsigned int’ arguments
   34 |             return "Reports test results as TeamCity service messages"s;
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [tests/CMakeFiles/catch-main.dir/build.make:79: tests/CMakeFiles/catch-main.dir/catch_main.cpp.o] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2247: tests/CMakeFiles/catch-main.dir/all] Error 2
make[1]: Leaving directory '....../libopenshot/build'
make: *** [Makefile:169: all] Error 2

@ferdnyc
Copy link
Contributor

ferdnyc commented Aug 16, 2021

Hmmm, std::enable_if_t is C++14, as is std::string_literals. It looks like the new Catch2 might require C++14 as a minimum standard level. (So does libopenshot-audio, now, so I'd think things should mostly be compiling for C++14 automatically. But, maybe not in all cases. Libopenshot's CMake setup still configures for only C++11.)

Can you try applying this diff, @jiapei100 , see if that makes a difference?

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7fd0cb15..127c1c1d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -106,8 +106,7 @@ if ((${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU") AND
         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -no-integrated-cpp")
 endif()
 
-#### Enable C++11 (for std::shared_ptr support)
-set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_STANDARD 14)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
 set(CMAKE_CXX_EXTENSIONS OFF)
 

@ferdnyc
Copy link
Contributor

ferdnyc commented Aug 16, 2021

(If that works, this is most likely a CMake bug, as the Catch2Targets.cmake file should be exporting targets configured for C++14 if that's what it requires.)

@ferdnyc
Copy link
Contributor

ferdnyc commented Aug 16, 2021

Actually, I take it back, this could be my fault — it's possible I caused this by building the catch-main object target as an intermediate step in building the test targets. catch-main itself never gets directly linked with Catch2::Catch2. (That only happens in the test targets, which it's also linked into.) So even if Catch2Targets.cmake is exporting C++14 requirements I'm not sure they'd be applied to catch-main. I'll see if I can fix that.

@ferdnyc
Copy link
Contributor

ferdnyc commented Aug 16, 2021

@jiapei100 @teoking I just merged #714 which should now properly apply --std=c++14 to the compiler command line for catch_main.cpp, if required.

@jiapei100
Copy link

jiapei100 commented Aug 17, 2021

Still buggy @ferdnyc
Looks like main function is missing in openshot-Frame-test

[ 72%] Linking CXX executable openshot-Frame-test
cd ....../libopenshot/build/tests && /usr/bin/cmake -E cmake_link_script CMakeFiles/openshot-Frame-test.dir/link.txt --verbose=1
/usr/local/bin/c++ -O3 -DNDEBUG CMakeFiles/openshot-Frame-test.dir/Frame.cpp.o CMakeFiles/catch-main.dir/catch_main.cpp.o -o openshot-Frame-test  -Wl,-rpath,....../libopenshot/build/src:/opt/Qt/5/lib:....../libopenshot/build/src/protobuf_messages /usr/local/lib/libCatch2.a ../src/libopenshot.so.0.2.5 /usr/local/lib/libopenshot-audio.so.0.2.0 /usr/lib/x86_64-linux-gnu/libasound.so /usr/lib/x86_64-linux-gnu/libz.so -ldl /usr/lib/x86_64-linux-gnu/libMagick++-6.Q16.so /usr/lib/x86_64-linux-gnu/libMagickCore-6.Q16.so /usr/lib/x86_64-linux-gnu/libjsoncpp.so /usr/local/lib/libavcodec.so /usr/local/lib/libavformat.so /usr/local/lib/libavutil.so /usr/local/lib/libswscale.so /usr/local/lib/libswresample.so /usr/local/lib64/libgomp.so /lib/x86_64-linux-gnu/libpthread.so /usr/lib/x86_64-linux-gnu/libzmq.so /usr/local/lib/libopencv_tracking.so.4.5.3 /usr/local/lib/libopencv_video.so.4.5.3 /usr/local/lib/libopencv_highgui.so.4.5.3 /opt/Qt/5/lib/libQt5Widgets.so.5.15.2 /opt/Qt/5/lib/libQt5Gui.so.5.15.2 /opt/Qt/5/lib/libQt5Core.so.5.15.2 /usr/local/lib/libopencv_calib3d.so.4.5.3 /usr/local/lib/libopencv_videoio.so.4.5.3 /usr/local/lib/libopencv_plot.so.4.5.3 /usr/local/lib/libopencv_datasets.so.4.5.3 /usr/local/lib/libopencv_imgcodecs.so.4.5.3 /usr/local/lib/libopencv_text.so.4.5.3 /usr/local/lib/libopencv_dnn.so.4.5.3 /usr/local/lib/libopencv_features2d.so.4.5.3 /usr/local/lib/libopencv_flann.so.4.5.3 /usr/local/lib/libopencv_imgproc.so.4.5.3 /usr/local/lib/libopencv_ml.so.4.5.3 /usr/local/lib/libopencv_core.so.4.5.3 /usr/local/lib/libopencv_cudev.so.4.5.3 ../src/protobuf_messages/libopenshot_protobuf.so.0.2.5 /usr/local/lib/libprotobuf.so -lpthread 
~/.linuxbrew/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-Frame-test.dir/build.make:139: tests/openshot-Frame-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:1913: tests/CMakeFiles/openshot-Frame-test.dir/all] Error 2
make[1]: Leaving directory '....../libopenshot/build'

@ferdnyc
Copy link
Contributor

ferdnyc commented Aug 17, 2021

@jiapei100

I just re-ran the build, I'm not seeing the same thing on Linux, building with gcc.

I'll try with Clang now, to see if that makes a difference... or it could be a macOS quirk.

If you were reusing an existing build dir, though, try completely deleting the entire dir, then re-generating and building in a clean dir. Sometimes out-of-date object files can cause issues like that, when the CMake config changes.

@ferdnyc
Copy link
Contributor

ferdnyc commented Aug 17, 2021

Just re-ran the entire build using clang++, no problems there either. So my money's on either:

  1. a dirty builddir
  2. some sort of quirk in either the newest Catch2, or when building/linking on macOS.

@teoking
Copy link
Author

teoking commented Aug 17, 2021

Thanks @ferdnyc , #714 works for me.

@jiapei100
Copy link

jiapei100 commented Aug 17, 2021

@ferdnyc

  1. Approx->Catch::Apporx
    otherwise, I'll have this ERROR message:
....../libopenshot/tests/KeyFrame.cpp:516:27: error: ‘Approx’ was not declared in this scope
  516 |  CHECK(k1.GetValue(10) == Approx(30.0f).margin(0.0001));
  1. Still, whenever I enable BUILD_TESTING,
    BUILD_TESTING ON
    I got the following ERROR messages:
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
collect2: error: ld returned 1 exit status
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
make[2]: *** [tests/CMakeFiles/openshot-CVTracker-test.dir/build.make:139: tests/openshot-CVTracker-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2275: tests/CMakeFiles/openshot-CVTracker-test.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
collect2: error: ld returned 1 exit status
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
make[2]: *** [tests/CMakeFiles/openshot-Frame-test.dir/build.make:139: tests/openshot-Frame-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
collect2: error: ld returned 1 exit status
make[1]: *** [CMakeFiles/Makefile2:1913: tests/CMakeFiles/openshot-Frame-test.dir/all] Error 2
make[2]: *** [tests/CMakeFiles/openshot-Clip-test.dir/build.make:139: tests/openshot-Clip-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2025: tests/CMakeFiles/openshot-Clip-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-Coordinate-test.dir/build.make:139: tests/openshot-Coordinate-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2193: tests/CMakeFiles/openshot-Coordinate-test.dir/all] Error 2
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
/usr/bin/ld: /lib/x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-Fraction-test.dir/build.make:139: tests/openshot-Fraction-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:1997: tests/CMakeFiles/openshot-Fraction-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-CacheMemory-test.dir/build.make:139: tests/openshot-CacheMemory-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[2]: *** [tests/CMakeFiles/openshot-FFmpegReader-test.dir/build.make:139: tests/openshot-FFmpegReader-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:1969: tests/CMakeFiles/openshot-FFmpegReader-test.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:2165: tests/CMakeFiles/openshot-CacheMemory-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-Settings-test.dir/build.make:139: tests/openshot-Settings-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2331: tests/CMakeFiles/openshot-Settings-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-KeyFrame-test.dir/build.make:139: tests/openshot-KeyFrame-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2053: tests/CMakeFiles/openshot-KeyFrame-test.dir/all] Error 2
make[2]: *** [tests/CMakeFiles/openshot-CacheDisk-test.dir/build.make:139: tests/openshot-CacheDisk-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2221: tests/CMakeFiles/openshot-CacheDisk-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-ReaderBase-test.dir/build.make:139: tests/openshot-ReaderBase-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2359: tests/CMakeFiles/openshot-ReaderBase-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-FrameMapper-test.dir/build.make:139: tests/openshot-FrameMapper-test] Error 1
collect2: error: ld returned 1 exit status
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:1941: tests/CMakeFiles/openshot-FrameMapper-test.dir/all] Error 2
make[2]: *** [tests/CMakeFiles/openshot-DummyReader-test.dir/build.make:139: tests/openshot-DummyReader-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
collect2: error: ld returned 1 exit status
make[1]: *** [CMakeFiles/Makefile2:2081: tests/CMakeFiles/openshot-DummyReader-test.dir/all] Error 2
make[2]: *** [tests/CMakeFiles/openshot-Timeline-test.dir/build.make:139: tests/openshot-Timeline-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[2]: *** [tests/CMakeFiles/openshot-Color-test.dir/build.make:139: tests/openshot-Color-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2137: tests/CMakeFiles/openshot-Timeline-test.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:2109: tests/CMakeFiles/openshot-Color-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-Point-test.dir/build.make:139: tests/openshot-Point-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2387: tests/CMakeFiles/openshot-Point-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-QtImageReader-test.dir/build.make:139: tests/openshot-QtImageReader-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2303: tests/CMakeFiles/openshot-QtImageReader-test.dir/all] Error 2
make[2]: *** [tests/CMakeFiles/openshot-FFmpegWriter-test.dir/build.make:139: tests/openshot-FFmpegWriter-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2471: tests/CMakeFiles/openshot-FFmpegWriter-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-CVStabilizer-test.dir/build.make:139: tests/openshot-CVStabilizer-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2443: tests/CMakeFiles/openshot-CVStabilizer-test.dir/all] Error 2
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/openshot-ImageWriter-test.dir/build.make:139: tests/openshot-ImageWriter-test] Error 1
make[2]: Leaving directory '....../libopenshot/build'
make[1]: *** [CMakeFiles/Makefile2:2415: tests/CMakeFiles/openshot-ImageWriter-test.dir/all] Error 2
make[1]: Leaving directory '....../libopenshot/build'
make: *** [Makefile:169: all] Error 2

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

Successfully merging a pull request may close this issue.

3 participants