FreeBSD port of MuseScore

• Jul 30, 2011 - 14:49


Just wanted to report that I have working FreeBSD port of MuseScore.

Here's a little patch to the build system which reorders includes a bit and which may be useful for other systems.

it solves build problem when portaudio18 is installed as well. At least on FreeBSD its portaudio.h is installed into root include directory, so with original include ordering, resulting paths

-I/usr/local/include (from ALSA) -I/usr/local/include/portaudio2 (portaudio)

make wrong portaudio.h included.

I'm not really into music, so I can't test all features, but the application seem to work. The main problem is sound output - ALSA is not native to FreeBSD, and though there's some kind of ALSA implementation, I couldn't get it to work:

ALSA lib seq_hw.c:457:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory
init ALSA driver failed
init audio driver failed
sequencer init failed

not sure why it's looking for /dev/snd/seq while "Use internal synthesizer" is enabled in preferences->I/O and as far as I understand it should only require raw PCM output. Portaudio doesn't work as well (Api: and Device: list are just empty, no relevant messages in the stderr).

Anyway, JACK output works (with internal synthesizer) and actually plays sound. A little bug I've noticed - when MuseScore is closed with Ctrl+Q while audio is playing, it (as it seems) won't clearly shutdown JACK connection and looped buffer will play infinitely after the program quits.

The port is almost complete and I think of committing it to the official FreeBSD ports tree after some tweaks. The things I don't really like are that script bindings conflict with qtscriptgenerator. (shouldn't MuseScore depend on the former instead? or at least install its binding to some local directory; or those are compatible and I can disable BUILD_SCRIPTGEN, install qtscriptgenerator and it will work?) and that system CXXFLAGS are overridden all over CMakeLists, e.g.:

set(CMAKE_CXX_FLAGS "-g -Wall -Wextra -Winvalid-pch -DQT_STATICPLUGIN")

I suggest to turn that into


and move -g into CMAKE_CXX_FLAGS_DEBUG where it really belongs. Can make a patch if needed.

Thanks for the great software!

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