Building Clutter

for all the people that wish to build Clutter on Linux without having conflicts with their distribution packages we now have a JHBuild moduleset for tracking Clutter’s development cycle. the instructions are pretty simple; to start, you’ll have to install a recent version of jhbuild (a lot of distributions package old snapshots):

  git clone git://git.gnome.org/jhbuild
  cd jhbuild
  ./autogen.sh && make && make install

you won’t require superuser privileges for installing JHBuild, or for building Clutter using JHBuild.

then, you will have to download the JHBuild configuration:

  curl -o ~/.jhbuildrc-clutter http://www.clutter-project.org/jhbuildrc-clutter

the last step will build Clutter and its dependencies (except for the GL stack: for that you’re better off using your distribution’s packages):

  jhbuild -f ~/.jhbuildrc-clutter build

done! :-)

along with the various libraries, in the moduleset there are meta-modules:

  • meta-clutter: builds Clutter and the basic integration libraries (Clutter-GStreamer, Clutter-GTK)
  • meta-clutter-extra: like meta-clutter, but it includes more integration libraries and NBTK, the Clutter-based Moblin toolkit
  • meta-pyclutter: like meta-clutter, but for the Python bindings

happy building, and have fun!

6 Responses to “Building Clutter”

  1. Oriol Rius Says:

    While I’m building ‘meta-pyclutter’ raised this error:

    http://pastebin.com/m597cb1cd

    Ideas?

  2. Emmanuele Says:

    yes, it’s automake-1.11 being too overzealous about duplicates in the installation lists. it’s already been fixed in pyclutter master.

  3. brainstorm Says:

    Guys, there are additional tricks to fix while installing clutter with jhbuild on Ubuntu, please, have a look at:

    http://oriolrius.cat/wiki/doku.php?id=clutter:start

    Under “Ubuntu 9.04 Clutter jhbuild mini-howto”, issues, for further details.

    Thanks !

  4. pete Says:

    Well, on centos 5.3 (which is really too old and conservative to be trying this on!) I couldn’t get the jhbuild thing past gtk-doc no matter what I tried.

    So I followed the following simple (haha!) process.

    Where I say “install from src” I just mean the usual untar package.version.tar.gz, cd package.version, make, make install unless noted otherwise..

    I wouldn’t recommend anyone do this, BTW, since it clearly violates the will of the package manager and stores up package-management trouble for the future.

    All tarballs were got from the package homes, except util-macros-1.3.0.tar.bz2 which I got from http://www.paldo.org/index-section-packages-page-main-releaseid-128632.html

    yum install libXdamage-devel (from rpmforge repo)

    yum install gtk-doc (don’t know if this necessary)

    install from src:

    autoconf-2.64.tar.bz2

    automake-1.10.tar.gz

    libtool-2.2.tar.gz

    pkg-config-0.23.tar.gz

    cp /usr/lib/pkgconfig/*pc /usr/local/lib/pkgconfig/

    install from src:

    util-macros-1.3.0.tar.bz2

    compositeproto-0.4.1.tar.bz2

    libXcomposite-0.4.1.tar.gz

    (I used autogen.sh, rather than ./configure, it seems :

    cd ../libXcomposite-0.4.1

    ./autogen.sh

    make

    make install

    )

    install from src:

    glib-2.22.0.tar.bz2

    pixman-0.16.2.tar.gz

    cairo-1.8.8.tar.gz

    cairomm-1.8.2.tar.gz

    fontconfig-2.7.3.tar.gz

    ( it was necessary to run make install again after manually running ldconfig :

    cd fontconfig-2.7.3/

    ./configure

    make

    make install

    ldconfig -v

    make install

    )

    install from src:

    pango-1.26.0.tar.bz2

    at which point, cd clutter-1.0.6/, ./configure, make, make install succeeded

    tried some of the interactive tests, first one I tried worked, but a couple segfaulted.

    I noticed that

    ldd /usr/src/clutter-1.0.6/clutter/.libs/libclutter-glx-1.0.so.0

    showed libclutter-glx-1.0 linked against /usr/lib/libpango

    so I did:

    cp -ar /usr/lib/*pango* /usr/lib/orig/

    cp -ar /usr/local/lib/pango/1.6.0/ /usr/lib/pango/

    cp -ar /usr/local/lib/lib*pango* /usr/lib

    ldconfig

    (this is a very bad thing to do to your system, I suspect!)

    after which pretty much all the tests ran ok except the two offscreen tests (the first segfaulted, the second I had to kill off the commandline)

  5. Oriol Says:

    running jhbuild again for update have this problem when gtk+ is updated:

    checking for BASE_DEPENDENCIES… configure: error: Package requirements (glib-2.0 >= 2.21.3 atk >= 1.29.2 pango >= 1.20 cairo >= 1.6) were not met:

    Requested ‘atk >= 1.29.2′ but version of Atk is 1.25.2

    my Fedora 11 do not have more new release of atk, how can I solve it without touch my base system?

    Thanks for help.

  6. Oriol Says:

    solved but maybe it is not enough pretty:

    - I downloaded atk 1.29
    - Run configure with –prefix=~/clutter/install
    - make && make install

    and now compilations continues.

    anyone has a more elegant solution?

Leave a Reply