Questions: Windows Build for MuseScore

• Jun 6, 2011 - 01:34

Hi,

first post ever. Spent last week demo'ing Sibelius, Finale and MuseScore and I'm going to go with the latter per scoring a lot of music I've written. However, I'd like to look into beefing up some features, and can give a hand per dev work if needed.

Can anybody answer the following per the Windows build of Musescore, please?
See http://musescore.org/en/developers-handbook/compile-instructions-window….

> It should work with the last SVN trunk. It will not work with versions 0.9.4 or older.
A. Isn't the latest version of Musescore version *1.0*?
All I see in svn's tags is 0.9.4. shouldn't I expect a tag of 1.0.0 or 1.x.x?

B. Is this saying I have to use an *older* version if I want to build this on Windows? (short of me making a Windows build out of a *nix build).

> Qt 4.7.0
Must this be exactly this version, or 4.7.x?

Thank you,
Ben Gillis


Comments

I build both the branch (1.x) and the trunk (2.0, latest 4338) under Windows. I am in the process of updating the build page with my notes, but I'm not there yet.

When you check out the code, the branch will be under the "branches\mscore-0-9-6" folder but it is in fact the 1.0 (or 1.x) branch. The trunk will be under the "trunk" folder, and it is the latest, destined for v2.0. I have not looked at the SVN tags.

QT, I use 4.7.3, the latest on Nokia's site.

In reply to by schepers

I already checked out the trunk under https://mscore.svn.sourceforge.net/svnroot/mscore/trunk. So, I'll go with that now.

I'm kind of puzzled how to tell what's version 1.0 if it's under mscore-0-9-6. Will v2.0.1 be under a different named tag?

The same per QT, version 4.7.x means it's compatible with any 4.7.whatever build. 4.7.0 means just that build.

Hopefully, I'm not being critical. Just clarifying the details before I *assume*. ;-)

In reply to by bgillis

"I already checked out the trunk under https://mscore.svn.sourceforge.net/svnroot/mscore/trunk. So, I'll go with that now."

I would recommend using "https://mscore.svn.sourceforge.net/svnroot/mscore" instead as it will also bring in the 1.x branch. Some bug fixes applied to the 2.0 trunk can be back ported to the 1.x branch for the next release.

"I'm kind of puzzled how to tell what's version 1.0 if it's under mscore-0-9-6. Will v2.0.1 be under a different named tag?"

I'm not sure I can answer this, but since you checked-out the trunk code only, you are only working with the 2.0 code. If you checked out the entire source tree, you would have another set of folders with one called branches. Inside of there are several other older versions, but the one of interest is mscore-0-9-6 which is, strangely enough, the 1.x code. I compile and work under the latest 1.x code, instead of the release 1.0, so I can find any new or lingering bugs before the 1.1 release which is coming out soon.

"The same per QT, version 4.7.x means it's compatible with any 4.7.whatever build. 4.7.0 means just that build."

Your original question asked about 4.7.x, and I know others here compile with earlier 4.7 versions. When I started compiling the only one easily (or obviously) available was 4.7.3 and it works fine.

I hope this answers your questions. I'm also writing a script (CMD) under Windows 7 which, to my mind, greatly aids in compiling under Windows. If you want it, I will upload it.

In reply to by schepers

The 0.9.6 branch was historically used to create the 0.9.6 release and MuseScore 1.0 has been developped further in this branch. So, there is no reason except history.

Regarding Qt, the only requirement is Qt 4.6 or more.

And please, upload your script :) I will use it and even commit it in the SVN if it makes sense.

In reply to by [DELETED] 5

OK, I will attach the latest version of the script to this post. A few things to be aware of:

1. The only thing you need to do is manually change the three paths at the beginning of the script, those for Qt, MinGW and CMake. You will be asked to do this if the path check fails. (I do not have the paths in my PATH variable, so you should remove them first for this to work)
2. I've never tested it under WinXP or Vista.
3. I use Tortoise to get the build revision, but have added the command for SubVersion as well, directly lifted from makefile.mingw. Hopefully it works.
4. There's a lot of comments in this script, just to help clarify some action I've taken, so the script appears quite large.
5. I've tried to trap every error condition to make it bullet-proof, but...

Any issues, please let me know so I can fix or update them. I will continue to update this script daily until I am completely satisfied with its stability, robustness and it has been tested successfully on more platforms.

[ edit ] - I briefly tested it under XP and corrected some simple but critical flaws. The XP CMD prompt has a few interesting limitations compared to Win7, but the script now seems to work under XP. I will upload that one tomorrow.

Attachment Size
build.zip 2.68 KB

In reply to by [DELETED] 5

Hi lasconic,

curious, why not tag 1.0 as 1.0? :-)

Hope I'm not pushing my luck being new and criticizing the repo conventions. :-) It is confusing to not have a branch, tag or something equivalent to the published release it is.

Nevertheless, I'm looking forward to examining the code and continuing to score out some material I've written, maybe joining up with some dev work.

Regards,
Ben Gillis

In reply to by schepers

Hi schepers,

thanks for the reply and being helpful. And, I'll check out the script, too.

I checked-out 2.0 code on-purpose, thinking the later the better. And, if I run into too many bugs, would back down on the version I'm using. Initial thoughts anyway.

Busy week at work, so I'll be doing what I can through this week to be setup asap. Then, will see about the script vs. what's there now.

Regards,
Ben

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