MuseScore icon indicating copy to clipboard operation
MuseScore copied to clipboard

[MU4 Issue] building with -DBUILD_UPDATE_MODULE:BOOL=OFF fails

Open darix opened this issue 2 years ago • 0 comments

Describe the bug trying to build with -DBUILD_UPDATE_MODULE:BOOL=OFF

To Reproduce Steps to reproduce the behavior:

  1. cmake -DBUILD_UPDATE_MODULE:BOOL=OFF
  2. invalid new-expression of abstract class type 'mu::update::UpdateServiceStub'
[   19s] [ 35%] Building CXX object src/framework/fonts/CMakeFiles/fonts.dir/fonts_autogen/mocs_compilation.cpp.o
[   19s] cd /home/abuild/rpmbuild/BUILD/MuseScore-4.0/build.release/src/framework/fonts && /usr/bin/ccache /var/lib/build/ccache/bin/c++ -DCUSTOM_ALLOCATOR_DISABLED -DHAW_LOGGER_QT_SUPPORT -DHAW_PROFILER_ENABLED -DNDEBUG -DPROJECT_ROOT_DIR=\"/home/abuild/
[   19s] In file included from /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updatestubmodule.cpp:26,
[   19s]                  from /home/abuild/rpmbuild/BUILD/MuseScore-4.0/build.release/src/stubs/update/CMakeFiles/update.dir/Unity/unity_0_cxx.cxx:3:
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updateconfigurationstub.h:45:16: error: 'mu::io::path_t mu::update::UpdateConfigurationStub::userAppDataPath() const' marked 'override', but does not override
[   19s]    45 |     io::path_t userAppDataPath() const override;
[   19s]       |                ^~~~~~~~~~~~~~~
[   19s] In file included from /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updatestubmodule.cpp:28:
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updateservicestub.h:31:46: error: invalid covariant return type for 'virtual mu::async::Promise<mu::RetVal<mu::update::ReleaseInfo> > mu::update::UpdateServiceStub::checkForUpdate()'
[   19s]    31 |     async::Promise<mu::RetVal<ReleaseInfo> > checkForUpdate() override;
[   19s]       |                                              ^~~~~~~~~~~~~~
[   19s] In file included from /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updateservicestub.h:25:
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/update/iupdateservice.h:41:37: note: overridden function is 'virtual mu::RetVal<mu::update::ReleaseInfo> mu::update::IUpdateService::checkForUpdate()'
[   19s]    41 |     virtual mu::RetVal<ReleaseInfo> checkForUpdate() = 0;
[   19s]       |                                     ^~~~~~~~~~~~~~
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updateservicestub.h:33:10: error: 'void mu::update::UpdateServiceStub::update()' marked 'override', but does not override
[   19s]    33 |     void update() override;
[   19s]       |          ^~~~~~
[   19s] [ 35%] Building CXX object src/framework/fonts/CMakeFiles/fonts.dir/Unity/unity_0_cxx.cxx.o
[   19s] cd /home/abuild/rpmbuild/BUILD/MuseScore-4.0/build.release/src/framework/shortcuts && /usr/bin/ccache /var/lib/build/ccache/bin/c++ -DCUSTOM_ALLOCATOR_DISABLED -DHAW_LOGGER_QT_SUPPORT -DHAW_PROFILER_ENABLED -DNDEBUG -DPROJECT_ROOT_DIR=\"/home/abu
[   19s] In file included from /usr/include/c++/12/memory:65,
[   19s]                  from /home/abuild/rpmbuild/BUILD/MuseScore-4.0/build/pch/pch.h:39,
[   19s]                  from /home/abuild/rpmbuild/BUILD/MuseScore-4.0/build.release/src/framework/global/CMakeFiles/global.dir/cmake_pch.hxx:5,
[   19s]                  from <command-line>:
[   19s] /usr/include/c++/12/bits/stl_construct.h: In instantiation of 'void std::_Construct(_Tp*, _Args&& ...) [with _Tp = mu::update::UpdateServiceStub; _Args = {}]':
[   19s] /usr/include/c++/12/bits/alloc_traits.h:635:19:   required from 'static void std::allocator_traits<std::allocator<void> >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = mu::update::UpdateServiceStub; _Args = {}; allocator_type = std::
[   19s] /usr/include/c++/12/bits/shared_ptr_base.h:604:39:   required from 'std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_Sp_counted_ptr_inplace(_Alloc, _Args&& ...) [with _Args = {}; _Tp = mu::update::UpdateServiceStub; _Alloc = std::allocator<void>;
[   19s] /usr/include/c++/12/bits/shared_ptr_base.h:971:16:   required from 'std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = mu::update::UpdateServiceStub; _Alloc = std::allocator<void>; _Args = 
[   19s] /usr/include/c++/12/bits/shared_ptr_base.h:1712:14:   required from 'std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = mu::update::UpdateServiceStub; __gn
[   19s] /usr/include/c++/12/bits/shared_ptr.h:464:59:   required from 'std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = mu::update::UpdateServiceStub]'
[   19s] /usr/include/c++/12/bits/shared_ptr.h:1009:14:   required from 'std::shared_ptr<typename std::enable_if<(! std::is_array< <template-parameter-1-1> >::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = mu::update::UpdateServiceStub; _Ar
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updatestubmodule.cpp:34:90:   required from here
[   19s] /usr/include/c++/12/bits/stl_construct.h:119:7: error: invalid new-expression of abstract class type 'mu::update::UpdateServiceStub'
[   19s]   119 |       ::new((void*)__p) _Tp(std::forward<_Args>(__args)...);
[   19s]       |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updateservicestub.h:28:7: note:   because the following virtual functions are pure within 'mu::update::UpdateServiceStub':
[   19s]    28 | class UpdateServiceStub : public IUpdateService
[   19s]       |       ^~~~~~~~~~~~~~~~~
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/update/iupdateservice.h:43:32: note:     'virtual mu::RetVal<mu::io::path_t> mu::update::IUpdateService::downloadRelease()'
[   19s]    43 |     virtual RetVal<io::path_t> downloadRelease() = 0;
[   19s]       |                                ^~~~~~~~~~~~~~~
[   19s] /usr/include/c++/12/bits/stl_construct.h: In instantiation of 'void std::_Construct(_Tp*, _Args&& ...) [with _Tp = mu::update::UpdateConfigurationStub; _Args = {}]':
[   19s] /usr/include/c++/12/bits/alloc_traits.h:635:19:   required from 'static void std::allocator_traits<std::allocator<void> >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = mu::update::UpdateConfigurationStub; _Args = {}; allocator_type =
[   19s] /usr/include/c++/12/bits/shared_ptr_base.h:604:39:   required from 'std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_Sp_counted_ptr_inplace(_Alloc, _Args&& ...) [with _Args = {}; _Tp = mu::update::UpdateConfigurationStub; _Alloc = std::allocator<
[   19s] /usr/include/c++/12/bits/shared_ptr_base.h:971:16:   required from 'std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = mu::update::UpdateConfigurationStub; _Alloc = std::allocator<void>; _A
[   19s] /usr/include/c++/12/bits/shared_ptr_base.h:1712:14:   required from 'std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = mu::update::UpdateConfigurationStub
[   19s] /usr/include/c++/12/bits/shared_ptr.h:464:59:   required from 'std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = mu::update::UpdateConfigurationStub]'
[   19s] /usr/include/c++/12/bits/shared_ptr.h:1009:14:   required from 'std::shared_ptr<typename std::enable_if<(! std::is_array< <template-parameter-1-1> >::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = mu::update::UpdateConfigurationStu
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updatestubmodule.cpp:35:108:   required from here
[   19s] /usr/include/c++/12/bits/stl_construct.h:119:7: error: invalid new-expression of abstract class type 'mu::update::UpdateConfigurationStub'
[   19s]   119 |       ::new((void*)__p) _Tp(std::forward<_Args>(__args)...);
[   19s]       |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updateconfigurationstub.h:28:7: note:   because the following virtual functions are pure within 'mu::update::UpdateConfigurationStub':
[   19s]    28 | class UpdateConfigurationStub : public IUpdateConfiguration
[   19s]       |       ^~~~~~~~~~~~~~~~~~~~~~~
[   19s] In file included from /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/stubs/update/updateconfigurationstub.h:25:
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/update/iupdateconfiguration.h:40:18: note:     'virtual bool mu::update::IUpdateConfiguration::isTestingMode() const'
[   19s]    40 |     virtual bool isTestingMode() const = 0;
[   19s]       |                  ^~~~~~~~~~~~~
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/update/iupdateconfiguration.h:41:18: note:     'virtual void mu::update::IUpdateConfiguration::setIsTestingMode(bool)'
[   19s]    41 |     virtual void setIsTestingMode(bool isTesting) = 0;
[   19s]       |                  ^~~~~~~~~~~~~~~~
[   19s] /home/abuild/rpmbuild/BUILD/MuseScore-4.0/src/update/iupdateconfiguration.h:55:24: note:     'virtual mu::io::path_t mu::update::IUpdateConfiguration::updateDataPath() const'
[   19s]    55 |     virtual io::path_t updateDataPath() const = 0;
[   19s]       |                        ^~~~~~~~~~~~~~
[   19s] make[2]: *** [src/stubs/update/CMakeFiles/update.dir/build.make:97: src/stubs/update/CMakeFiles/update.dir/Unity/unity_0_cxx.cxx.o] Error 1
[   19s] make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/MuseScore-4.0/build.release'
[   19s] make[1]: *** [CMakeFiles/Makefile2:5234: src/stubs/update/CMakeFiles/update.dir/all] Error 2

Expected behavior

successful build

Platform information

  • OS: openSUSE Tumbleweed

Additional context Add any other context about the problem here.

darix avatar Dec 27 '22 11:12 darix