compiling on rasbian buster: qtwebengine5-dev missing
I'm trying to compile musescore on my raspberry pi, but since the qtwebengine5-dev package is missing from the repo for some reason, the build fails. What are my options? I can think of:
1) Compile qt from source, but not sure how to approach this, "how much" of qt I really need to get the build working, which version of qt, any pointers appreciated.
2) If possible, hack the parts of musescore that uses qtwebengine5-dev out of musescore, not sure if this is even feasible, is qtwebengine5-dev used for core elements of musescore, or just "some small corner" that I can do without. Again, any input is highly appreciated.
Is there a better way to go about this? Anyone successfully compiled musescore on raspberry pi?
Comments
Build with disabling webengine. MinGW builds do that too. Check
BUILD_WEBENGINE
and set toOFF
In reply to Build with disabling… by Jojo-Schmitz
Thanks, got it!
Is it possible to describe with one sentence what functionality I'll be disabling here?
In reply to Thanks, got it! Is it… by Atte Jensen
The web-base part of the Startcenter and the web- based part of the Save Online dialog
Thanks for the pointers!
I tried compiling following the steps outlined here: https://musescore.org/en/handbook/developers-handbook/compilation/compi…, make goes well, "sudo make install" fails, I can't figure out what the errors are exactly, any help appreciated. Here are the actual steps I did (I hope it's not totally obfuscated by linebreaks):
git clone --depth 1 git://github.com/musescore/MuseScore.git --branch v3.4.2
mv MuseScore MuseScore_3.4.2
edit Makefile (BUILD_WEBENGINE="OFF")
atte@hune:~/downloads/tmp/MuseScore_3.4.2$ grep WEBENG Makefile
BUILD_WEBENGINE="OFF" # Override with "OFF" to disable.
-DBUILD_WEBENGINE="${BUILD_WEBENGINE}" \
-DBUILD_WEBENGINE="${BUILD_WEBENGINE}" \
make revision
make
..snip
Scanning dependencies of target mscore_autogen
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make[3]: Entering directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 98%] Automatic MOC for target mscore
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 98%] Built target mscore_autogen
make[3]: Entering directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
Scanning dependencies of target mscore
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make[3]: Entering directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 98%] Building CXX object main/CMakeFiles/mscore.dir/mscore_autogen/mocs_compilation.cpp.o
[ 98%] Building CXX object main/CMakeFiles/mscore.dir/main.cpp.o
[100%] Linking CXX executable mscore
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[100%] Built target mscore
make[2]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make[1]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
sudo make install
..snip
make[3]: Entering directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 0%] Automatic MOC for target google_analytics
[ 1%] Automatic MOC for target global
[ 1%] Generating mscore.1.gz
[ 1%] Copying '/mnt/data/atte/tmp/MuseScore_3.4.2/share/workspaces/Basic.xml' to 'Basic/Basic.xml'
Man pages have been compressed ready for installation.
Creating symlink alias for man pages.
Symlink alias: musescore.1.gz -> mscore.1.gz
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 1%] Built target manpages
make[3]: Entering directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
Scanning dependencies of target mops1
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 1%] Copying '/mnt/data/atte/tmp/MuseScore_3.4.2/share/workspaces/Advanced.xml' to 'Advanced/Advanced.xml'
make[3]: Entering directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make[3]: *** No rule to make target 'all.h', needed by 'CMakeFiles/mops1'. Stop.
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make[2]: *** [CMakeFiles/Makefile2:73: CMakeFiles/mops1.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....
[ 1%] Built target global_autogen
[ 1%] Compressing 'Advanced.workspace'
[ 1%] Compressing 'Basic.workspace'
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 1%] Built target workspaces
make[3]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
[ 1%] Built target google_analytics_autogen
make[2]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make[1]: *** [Makefile:152: all] Error 2
make[1]: Leaving directory '/mnt/data/atte/tmp/MuseScore_3.4.2/build.release'
make: *** [Makefile:52: release] Error 2
In reply to Thanks for the pointers! I… by Atte Jensen
I can't help you directly, but you might find some useful information here or here.
In reply to I can't help you directly,… by Spire42
Thanks! Those are quite old links and referring to version 2.X, I imagine they wouldn't necessarily translate very well to my situation. Am I wrong?
In reply to Thanks! Those are quite old… by Atte Jensen
There's only one way to find out.
In reply to Thanks for the pointers! I… by Atte Jensen
When I tried to compile MuseScore for the first time (not on a pi) I had the same webengine problem and when I fixed that I got numerous other weird errors like yours.
I don't know about your distro, but in some distributions (debian based), there are both qt4 and qt5 installed and this leads to compilations issues. You should check if you have qt4 installed and if yes, try to remove qt4 packages. You could also install qt5-default (if that's is not installed). These 2 things fixed my errors in various systems.
Good luck to you :-)
In reply to When I tried to compile… by Sergios - Anes…
Thanks, just tried that, no more qt4 on the computer, qt5-default was already installed. Problem persists (make is finishing without errors, make install fails). Ideas?
A bit late to this party, but what I ended up doing (just a few minutes ago with a fresh Raspberry Pi image and a fresh cloning of the MuseScore repo) appears to have worked, aside from ridiculously large scaling of everything (text, icons, etc):
Turn web engine stuff off in both Makefile and CMakeLists.txt
Makefile:
BUILD_WEBENGINE="OFF" # Override with "OFF" to disable.
CMakeLists.txt:
option(BUILD_WEBENGINE "Built in webengine support" OFF)
(I also did a "
make clean
" and "make revision
" before the "make
" just to be sure.)