From Denemo - Free and Open Music Notation Editor
When your GNU/Linux distribution does not have a reasonably recent version of Denemo available, you can compile it yourself from source.
The very short guide is:
$ sh autogen.sh $ ./configure $ make $ sudo make install
Note that before you can build Denemo, you must have installed the development files for Denemo's dependencies. Again, the preferable way (if available) is getting your distribution's packages. How to find and install these, however, is of course distribution-specific.
For information on how to tweak the build process to your needs, see the INSTALL file and run ./configure --help.
One useful tweak is for building as a normal user, not root. You need to configure with --sysconfdir set to a location (mypath say) in your home directory. For example
./configure --prefix=/mypath/ --sysconfdir=/mypath/
Debian (and Ubuntu)
If you're using Debian Testing (and these instructions probably apply to other versions of Debian and variations like Ubuntu, too), the quick guide is:
$ sudo apt-get install build-essential $ sudo apt-get build-dep denemo $ sudo apt-get install guile-1.8-dev libaubio-dev portaudio19-dev libfftw3-dev
libgtksourceview-2.0-dev needs to be added for the latest git (0.8.9)
Educational instructions
The commands above should be enough to get you all of Denemo's build dependencies. However, it's nice to know how to find out what to install yourself. To this end, I documented what I did to arrive at the above command set.
I'll describe what I tried to do, which command I used, and what the result was. You'll see it's not particularly difficult, just a couple of tricks that are useful to know.
| Intention | Command | Result |
|---|---|---|
| Remove any old denemo package that might have been previously installed | apt-get remove denemo | |
| Get the 'build-essential' dependencies. This is a set of dependencies that always tend to come in handy when building things. | sudo apt-get install build-essential | |
| Get the build-dependencies for the debian denemo package. While this package is out-of-date, there's probably some stuff in there that's still useful | sudo apt-get build-dep denemo | |
| Try configuring | ./configure | 'configure: error: guile-config required but not found' |
| Looks like I need a 'guile-config' binary. Let's see in what package that lives | apt-file search guile-config | apparently this command is found in guile-1.6-dev and guile-1.8-dev |
| Installed guile-1.8-dev | sudo apt-get install guile-1.8-dev | |
| Try configuring. | ./configure | Package requirements (aubio >= 0.3.2) were not met |
| Looks like I need a 'aubio' package. | apt-file search libaubio'. | there's a libaubio2 package. |
| Installed libaubio2. | apt-get install libaubio2 | |
| Try configuring | ./configure | hrm, still not finding libaubio |
| Checked the version of the libaubio package | apt-cache show libaubio | 0.3.2. That should be fine. |
| Doh: realized of course I also need the '-dev' package of libaubio. | apt-get install libaubio-dev | |
| Try configuring: | ./configure | portaudio-2.0 missing |
| Looking for portaudio-2.0 | apt-file search portaudio-2.0.pc ; apt-get install portaudio19-dev' | |
| Try configuring | ./configure | fftw3 missing |
| Looking for fftw3 | apt-file search fftw3.pc ; apt-get install libfftw3-dev | |
| Try configuring. | ./configure | victory! |
| Compiling . | make | after coffee: a compiled denemo |
| Installing | sudo make install | Denemo 0.8.8 is installed. |