Building

From Buzztard

Jump to: navigation, search

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
Personal tools
collaboration

SourceForge Logo

GStreamer Logo

Linux Sound Logo

MediaWiki

Valgrind

GNU Library Public Licence

GNU Free Documentation License 1.2