Building
From Buzztard
eracelch
Contents |
[edit] Project components
The buzztard project is hosted at sourceforge.net. There you find the project SVN repository. You can browse the repository starting with the main components. These are described on the Architecture page.
If you have any problems building the project, please let us know (mail us or submit a bug report on www.sourceforge.net).
[edit] Requirements
We use current cvs versions (0.10) of gstreamer and its plugins:
- gstreamer
- gst-plugins-base
- gst-plugins-good
(see cvs access, source tarballs).
If you like to use mp3 recording you need also the gst-plugins-ugly (lame) package from gstreamer.
Further you need a recent glib and gtk+, atk, pango, gnome-canvas setup.
If you want to use our testing environment you need check.
Remember to install the -devel packages from your distribution. Otherwise the build tools can't find the packages.
[edit] Getting the sources
You can either download stable releases or checkout sources from SVN. If you intend to help us with bug-fixing and development go for the SVN:
svn co https://buzztard.svn.sourceforge.net/svnroot/buzztard/trunk/bml bml svn co https://buzztard.svn.sourceforge.net/svnroot/buzztard/trunk/bsl bsl svn co https://buzztard.svn.sourceforge.net/svnroot/buzztard/trunk/buzzmachines buzzmachines svn co https://buzztard.svn.sourceforge.net/svnroot/buzztard/trunk/buzztard buzztard svn co https://buzztard.svn.sourceforge.net/svnroot/buzztard/trunk/gst-buzztard gst-buzztard svn co https://buzztard.svn.sourceforge.net/svnroot/buzztard/trunk/gstbml gstbml
[edit] Dependencies / Build Order
The only mandatory modules are : gst-buzztard and buzztard.
- bsl must be build after buzztard
- gstbml must be build after gst-buzztard and bml
The build order could be:
bml -> buzzmachines
gst-buzztard -> buzztard -> bsl
-> gstbml
[edit] Building
We supply autogen.sh scripts with each module. You need to run them after checking out the sources from SVN, to bootstrap the build setup. You can pass configure options to autogen.sh. Further it generates a autoregen.sh script, that you can use after doing SVN updates. Building is done with the usual
./configure; make; make install
command triplet. For a production install you can use
./configure; make; make install-strip
to save some disk space.
All modules support some extra configure options:
- --enable-debug=yes/no: The debug build has logging enabled and uses pedandic compile options.
- --disable-deprecated: Warn if deprecated API is used (useful for developers).
- --enable-gtk-doc: Build API docs
For testing purposes all packages can be installed locally (to $HOME) by passing --prefix=$HOME/buzztard. Although in that case several environment variables need to be updated. Details can be found in this README file.
If you don't specify a prefix, be aware that installation goes to /usr/local. That means you need to run make install as root. Furthermore its likely that you have to do
export GST_PLUGIN_PATH=/usr/local/lib/gstreamer-0.10
in order to make the plugins installed by gst-buzztard available.
[edit] Building gst-buzztard
This package contains code that eventualy will be move to gstreamer and right now is needed to build all other buzztard-modules.
The file README describes how to install it locally.
[edit] Building buzztard
This module contains the core library and the end-user apps. The file README describes how to install it locally.
The next steps are optional and only required if you need compatibillity with the buzz software.
[edit] Building the BuzzMachine loader
This module contains the buzzmachine wrapper. The file README gives more details.
[edit] Building the BuzzMachine GStreamer plugin
Here one find the bml library wrapped as a gstreamer plugin. The file README gives more details.
[edit] Building the BuzzSong loader
This package provides a io-plugin for importing buzz songs. The file README gives more details.
[edit] Verifying
You can run some checks to test the freshly built buzztard version. Inside most modules simply run
make check
You should see no failed tests in a release.
[edit] Troubleshooting
[edit] it does not generate
currently, for autogen.sh to run, you need the gconf-dev package installed.
under fedora (core 6 and 7 at least) the package is called GConf2-devel, which might be confusing.
[edit] it does not configure
./configure: line 24188: syntax error near unexpected token `1.4' ./configure: line 24188: `GTK_DOC_CHECK(1.4)'
If you build from CVS you need to have gtkdoc installed. It basically misses m4/gtk-doc.m4.
[edit] it does not start
Does it maybe complain about:
bt-edit: error while loading shared libraries: libbtcore.so.0: cannot open shared object file: No such file or directory
If so, run this as root:
ldconfig
[edit] it does not find simsyn or audiodelay
Have you maybe installed to /usr/local? The default gstreamer plugin path only covers its own install dir (e.g. /usr). Add this to your settings
export GST_PLUGIN_PATH=/usr/local/lib/gstreamer-0.10
[edit] Building with Jhbuild
We have a Jhbuild script in our SVN system. To use the jhbuild script, you have first checkout the build-tools module from subversion:
svn co https://buzztard.svn.sourceforge.net/svnroot/buzztard/trunk/build-tools build-tools
Now you have to create a directory under your home:
mkdir -p ~/buzztard/jhbuild
After that, you can run jhbuild:
jhbuild -f build-tools/jhbuild/buzztard.jhbuildrc -m build-tools/jhbuild/buzztard.modules
This will checkout gst-buzztard and buzztard from svn and compiles them. After jhbuild is finished, buzztard is installed in
~/buzztard/jhbuild/install/
You can launch the composer using:
jhbuild -f jhbuild/buzztard.jhbuildrc run ~/buzztard/jhbuild/install/bin/bt-edit



