MuseScore
MuseScore copied to clipboard
[MU4 Issue] building with -DBUILD_UPDATE_MODULE:BOOL=OFF fails
Describe the bug
trying to build with -DBUILD_UPDATE_MODULE:BOOL=OFF
To Reproduce Steps to reproduce the behavior:
-
cmake -DBUILD_UPDATE_MODULE:BOOL=OFF
-
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.