Here you find a short description on how you can get the development version running.


Contents

MusE 2.0

Please note that development has now moved to the muse2 branch but this version is as of yet unreleased. which finally has been released :) You can get it from the download page, the svn branch "release_2_0" or your distro's repositories.

SVN

This repository is called muse2, there also an abandoned project called muse_qt4_evolution which now is considered again, and ideas from which are implemented into the current development branch.

Further information about sourceforge svn support is available here:

http://sourceforge.net/svn/?group_id=93414

Building

The main source of build instructions is in the file lmuse/trunk/muse2/README

Dependencies

Most dependencies are the same as for MusE 1.x below, the main changes are the build system and Qt4. This means you need cmake http://www.cmake.org/ to initiate the build and development packages for Qt4. The build system will inform you about other missing features. Call on the MusE development mailinglist for help on this matter.

Get the SVN source tree

svn co https://lmuse.svn.sourceforge.net/svnroot/lmuse lmuse

Build it

Enter the dir trunk/muse2. There is information in the README file concerning building. The easy way if nothing needs to be changed and you want a release build is to execute the script:

./compile_muse.sh

This will configure and build the entire package. Some optional packages may not be built if the corresponding development packages are not found, e.g fluidsynth support requires libfluidsynth development packages installed

To install MusE enter the build directory and perform:

make install

or

sudo make install

if root support is not already available

A step by step build instruction is in the README file.

Using Qt Creator for development

Qt4 comes with a development environment Qt Creator that can be recommended for developing MusE.
If Qt Creator is fairly recent it has support for opening the CMakeLists.txt directly. The wizard asks you to run cmake and you should point it to the correct build dir and let it run cmake, after this you should be good to go.


If your version Qt Creator is older (Qt4.5 or older I believe) there are some steps to go through as detailed below:
1. launch Qt Creator
2. Select [Create New Project...] in the startup wizard (or New from the menu)
3. Choose Import of Makefile-based Project
4. Name the project and navigate to the lmuse/trunk/muse2 folder in the sources and click next.
5. Unclick the "Add to VCS (subversion)" and click Finish
6. Project is now imported, now select the Projects button on the left and add /build to the Build directory line.
7. To get code completion to work for Qt classes you may need to add the Qt include folders to the list of folders in <projectname>.includes
For instance:

/usr/share/qt4/include/Qt
/usr/share/qt4/include/Qt3Support
/usr/share/qt4/include/QtAssistant
/usr/share/qt4/include/QtCore
/usr/share/qt4/include/QtDBus
/usr/share/qt4/include/QtDesigner
/usr/share/qt4/include/QtGui
/usr/share/qt4/include/QtHelp
/usr/share/qt4/include/QtMultimedia
/usr/share/qt4/include/QtNetwork
/usr/share/qt4/include/QtOpenGL
/usr/share/qt4/include/QtScript
/usr/share/qt4/include/QtScriptTools
/usr/share/qt4/include/QtSql
/usr/share/qt4/include/QtSvg
/usr/share/qt4/include/QtTest
/usr/share/qt4/include/QtUiTools
/usr/share/qt4/include/QtWebKit
/usr/share/qt4/include/QtXml
/usr/share/qt4/include/QtXmlPatterns

MusE 1.x

What you need

Development tools needed to build MusE 1.x: gnu g++ automake autoconf libtool pkgconfig

development packages for: alsa jack qt3 libsoundfile libsamplerate (optional but recommended) fluidsynth (optional but recommended) python (optional) lash (optional)

When trying to compile muse it will for most things warn that a dependency is missing so if something is missing from the list above, fetch it then and try to compile again.

Download

First get the files from the repository with:

svn co https://lmuse.svn.sourceforge.net/svnroot/lmuse lmuse

Compilation

cd muse

run the autogen script with ./autogen.sh

Do not forget to export your QTDIR variables or to pass it with the ./configure - script.

If you choose the configure script way you can see possible parameters with:

joachim@debian:~/tmp/muse-stuff/muse$ ./configure --help
 --with-docbook-stylesheets=DIR  use DIR/html/docbook.dsl
 --with-x                use the X Window System
 --with-qt-prefix=PFX    where the root of Qt is installed
 --with-qt-includes=DIR  where the Qt includes are installed
 --with-qt-libraries=DIR where the Qt libraries are installed.
 --with-qt-binaries=DIR  where the Qt binaries are installed.
 --with-qt-moc=PROG      where the Qt meta object compiler is installed.
 --with-qt-uic=PROG      where the Qt user interface compiler is installed.
 --with-alsa-prefix=PFX  prefix where alsa library is installed (optional)
 --with-alsa-inc-prefix=PFX  prefix where include libraries are (optional)

export QTDIR=/usr/share/qt3 with bash (i got debian here, so there are the qt3 libs stored)

./configure --enable-optimize --disable-debug

After all you should see something like this:

... .(here was much much more).. ...

config.status: creating lib/synthi/Makefile
config.status: creating lib/plugins/Makefile
config.status: creating plugins/Makefile
config.status: creating plugins/freeverb/Makefile
config.status: creating Doxyfile
config.status: creating config.h
config.status: executing depfiles commands
configure:
 MusE configured

 using rtcap:         no
 LASH support:      yes
 setuid root install: no
 setuid root build:   no
 fluidsynth softsynth: yes

 jade:                openjade
 doxygen:             no
 graphviz:            no
 perl:                /usr/bin/perl
 treeviews in doxygen
 html output:         no

 C++ compiler:        g++
 optimizing:          yes
 debug:               no
 optimise for arch:   none

 installation prefix: /usr/local

Hint:
If you run the "./configure ..." command from a real console and not within X the testprogram can not be run so the test fails. Do not run configure from a real console.

Hint II:
I tried to run the configure within X from a console where I used "su" to get root. In Debian you have to run "xhost +" in a x-console as normal user first to be able to run X programs as root on the same X server. This is because this increases security in some way!

./autogen problems

If you get a warning when you run "autogen.sh".

DO NOT IGNORE IT

That may be the source for many errors. If a version failed this test, update it and test again.

Running "autogen.sh"
automake version: 1.4-p6 (not ok)

####################################################################
#########################  WARNING  ################################
####################################################################

        You need automake >= 1.7!

autoconf version: 2.59 (ok)
libtool version: 1.4.3 (ok)
pkg-config: /usr/bin/pkg-config

-- In the case above you would have to update your "automake". Do this with "apt-get install automake1.7" or in case you don't have debian you might have to download the newes version of automake.


make command

so now the interesting part is coming, type:

make

or, if you are on a multicore system you could thread make with, for instance 'make -j3' to speed up compilation

you'll see something like this:

joachim@debian:~/tmp/muse-stuff/muse$ make make all-recursive make[1]: Entering directory `/home/joachim/tmp/muse-stuff/muse' Making all in m4 make[2]: Entering directory `/home/joachim/tmp/muse-stuff/muse/m4' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/joachim/tmp/muse-stuff/muse/m4' Making all in synti make[2]: Entering directory `/home/joachim/tmp/muse-stuff/muse/synti' make all-recursive make[3]: Entering directory `/home/joachim/tmp/muse-stuff/muse/synti' Making all in libsynti make[4]: Entering directory `/home/joachim/tmp/muse-stuff/muse/synti/libsynti' make all-am .... (and so on)


Please submit patches to lmuse-devel@sourceforge.net for evaluation and inclusion.
You can paste the text into your email, or redirect stdout to an appropriately named file for attachment.

---

Completed

When compilation is finished try installing it with 'sudo make install'. After you installed the software type 'muse' in console. Do not forget to start jackd as the same user as you run MusE. I assume you run as root so open a second terminal and type "jackd -d alsa". If your done with testing as root I recommand to run MusE as a normal but with special execution rights (sudo?)

If you got an older version of muse installed, remove it. This is done with apt-get remove muse. Or in similar steps with the tool "rpm".

Powered by MediaWiki