[SOLVED] MuseScore 3 compiles successfully but always crashes

• Feb 22, 2019 - 08:03

Hi my favourite notator!

I just downloaded mscore 3 source on my machine (Mageia 6, x86_64) and tried to compile it. I needed to do that, instead of using the AppImage, since that last one does not support Jack. At first, the compilation didn't go well, but then everything got fine when I signalled PortAudio as OFF in the Make file (strange, as a matter of fact, since portaudio and portmidi are both installed on the machine, both as libs and devel, of course).

Anyway, after the successful compilation, the "make install" didn't go well, neither trying to run the programme from build-release/mscore/ directly.

I don't know where else to look, or what to search for. So, any help is more than welcome.

Thanks a million in advance.

Hosam Adeeb Nashed


Comments

Running from the build directory rather than the install directory is expected to crash
Did you follow all the build steps from the developers' handbook?

In reply to by Jojo-Schmitz

I just did the usual: "make", then "sudo make install". The install didn't go well. The error message doesn't say much, just that the process failed.

BUT...

Trying to run the programme from the build directory worked just fine with the two previous versions, namely 1.3 and 2.3.2!!!

In reply to by Jojo-Schmitz

CMake Error at mscore/cmake_install.cmake:36 (file):
file INSTALL cannot find "//QtWebEngineProcess".
Call Stack (most recent call first):
cmake_install.cmake:58 (include)

Makefile:84: recipe for target 'install/strip' failed
make[1]: *** [install/strip] Error 1
make[1]: Leaving directory '/home/hosadeeb/mscore3_0_2/build.release'
Makefile:138: recipe for target 'install' failed
make: *** [install] Error 2

In reply to by Jojo-Schmitz

I copied the bit for Ubuntu Studio, and provided a missing "endif". Still, on "make install" I received the following error messages:

Installing the project stripped...
-- Install configuration: "RELEASE"
-- Installing: /usr/local/share/applications/mscore3.desktop
-- Installing: /usr/local/share/appdata/mscore3.appdata.xml
-- Installing: /usr/local/share/man/man1/mscore3.1.gz
-- Up-to-date: /usr/local/share/man/man1/musescore3.1.gz
-- Installing: /usr/local/share/mime/packages/musescore3.xml
CMake Error at cmake_install.cmake:56 (file):
file INSTALL cannot find "/usr/lib64/qt4/libexec/QtWebEngineProcess".

Makefile:84: recipe for target 'install/strip' failed
make[1]: *** [install/strip] Error 1
make[1]: Leaving directory '/home/hosadeeb/mscore3_0_2/build.release'
Makefile:138: recipe for target 'install' failed
make: *** [install] Error 2

Now, the problem is, I have both qt4 and qt5 installed, and the required file resides in the qt5 dir tree. I just don't know where to put that in either the Make file or the CMakeLists file.

In reply to by Jojo-Schmitz

I have a question on that: When I press F5 within Visual Studio 2017 (on Windows 10), it starts in debugging mode using the executabel in build directory. Who to convince VS 2017 to start debugging from install directory? Maybe it is described sowhere in developer's handbook and I just missed it. If so, can you give me a pointer?

Besides that: my very deep respect for the descriptions in the developers handbook, they are very accurate and complete. Even a dinosaur like me was able to get it up and runnig within a couple of hours using the description there.

So, that's what I did, still to no avail:
In the excerpt (condition) I had copied for the Ubuntu Studio bit, I noticed that there was an un-defined var, only mentioned for that condition. So, I put the needed paths manually, since the original script assumed everything was in one place, while on my installation (Mageia 6) that wasn't the case.

On "make install", all the needed files are found and put in the right places, but I nevertheless receive an error message "cannot find //QtWebEngineProcess". What I find strange is the fact that the file's path is "//"...

In reply to by HosAdeeb

Hi. I ran into this problem, and the solution above was not possible.

I think I know the root cause of this problem. At least this works for me without really deleting any packages. I say this without really being a QT expert, just a patzer.

Qt has a program called qtchooser, which chooses which qt release you use. You can have qt4 and qt5 both installed, and choose one or the other as needed. This program uses a configuration file to find out where things are installed.
Ubuntu has two packages: qt4-default and qt5-default. If you install the first your system defaults to qt4. If you install the second your system defaults to qt5. So, I suspect that just removing qt4-default and installing qt5-default seems to fix the problem. That's what I first did, and it seemed to work. But it seems like reconfiguring a whole system just to build one application is a mistake. Maybe it's just me.

A better solution, I think, and one which works with the release 3.3.4 branch, is to change line 59 of build/FindQt5.cmake to read:
execute_process(COMMAND ${QT_QMAKE_EXECUTABLE} "-qt=qt5" "-query" ${_var}
The CLI parameter "-qt=qt5" is new. This tells QT_QMAKE_EXECUTABLE (== qmake) to use qt5. This is what I did the second time I tried to solve this problem, and this seems to work as well. In fact, I installed qt4-default, thereby restoring qt4 as the default, and adding -qt=qt5 in FindQt5.cmake seemed to build properly.

If I had a vote, and I realize I don't, I would do the second thing. As I say, I'm just a Qt patzer, so you get what you pay for.

Do you still have an unanswered question? Please log in first to post your question.