Notes on compiling Pure Data on Chakra

There is currently no package for Pure Data in the Chakra linux distribution, so I decided to build it myself. This turned out to be a lengthy process; here's what I did to get version 0.42.5 running:

  • I downloaded the "Source tarball for all platforms" from puredata.org.

  • When you extract the tarball you get a directory called Pd-0.42.5-extended.

  • I had to make a few changes in there for the build to succeed:

    1. in Gem/src/Pixes/videoV4L.h, change #include <linux/videodev.h> to #include <linux/videodev2.h>
    2. in externals/pdp, look for the string -export-dynamic in Makefile, opengl/Makefile and scaf/Makefile, and edit out extra hyphens in front of it (gcc will complain over --export-dynamic and interrupt the build)
    3. in externals/Makefile, remove pidip from where it says

      else  
        # GNU/Linux, BSD, IRIX, etc.  
        LIB_TARGETS += hid pdp pidip gem2pdp iem16 pdp_opengl postlude
      

      This will disable the pidip extension, which requires libquicktime (for which there is currently no Chakra package either, and which I haven't bothered to install manually...)

  • go to packages/linux_make and do make install. Unlike the usual meaning of that command, this will build the package, not install it.

  • After building (~ half an hour on my machine), type make package to prepare an installation tarball

  • cd into build and do:

    tar -xjf Pd-0.42.5-extended.tar.bz2
    cd Pd-0.42.5-extended

  • Installation now fails over some missing help files. Providing empty files allows the install script to continue: touch lib/pd-extended/extra/iemlib/-help.pd lib/pd-extended/extra/iemlib/parent-help.pd

  • Finally install the package: sudo make install

I can now run pdextended and create fun stuff like in the picture above.