Views
Building for GNU/Linux using Debian
First you will need to make sure that you have all of the standard development tools installed.
apt-get install
make
gcc-3.3
g++-3.3
cpp-3.3
libc6-dev
curl
cvs
autoconf
automake1.8
bzip2
Required Packages
All of these packages are used in the compilation of Pd-extended on Debian Sarge/stable. All of them come from the standard Debian repositories except those marked. The easiest way to install all of these is to copy and paste the list of packages on a line starting with apt-get install.
This is all that is needed to compile the Pd core:
tcl8.4
tcl8.4-dev
tk8.4
tk8.4-dev
For all of the audio objects, you need these packages:
libasound2
libasound2-dev
libogg0
libogg-dev
libvorbis0a
libvorbisenc2
libvorbisfile3
libvorbis-dev
libspeex1
libspeex-dev
libflac-dev
libsndfile1
libsndfile1-dev
fftw3
fftw3-dev
ladspa-sdk
For Debian/stable you need these:
libjack0.80.0-0
libjack0.80.0-dev
libflac6
liblo0
liblo0-dev
For Debian/testing, Debian/unstable, or Ubuntu/dapper you need these:
libjack0.100.0-0
libjack0.100.0-dev
libflac7
liblo0
liblo0-dev
LAME is a free library that provides mp3 support. The mp3 format is patented (No Software Patents!) in the U.S. and maybe other countries, so Debian cannot include LAME. You can get LAME packages by adding this line to your /etc/apt/sources.list:
Debian sarge/stable
deb http://ace-host.stuart.id.au/russell/files/debian/sarge/lame/ ./
Debian etch/testing x86
deb http://rarewares.org/debian/packages/unstable/ ./
Debian etch/testing PowerPC?
deb http://honk.physik.uni-konstanz.de/~agx/linux-ppc/debian/ unstable/
Ubuntu Dapper
In your /etc/apt/sources.list, you need to uncomment the lines that have dapper universe and add multiverse to the end:
deb http://us.archive.ubuntu.com/ubuntu/ dapper universe multiverse
Now run apt-get update and then install these packages:
liblame0
liblame-dev
For all the video objects, you need these packages:
imagemagick
liblcms1
liblcms1-dev
libjasper-dev
libjpeg62
libjpeg62-dev
libpng3
libpng3-dev
libtiff4
libtiff4-dev
libtheora0
libtheora-dev
libmpeg-dev
libmpeg1
libmpeg2-4
libmpeg3-1
libmpeg3-dev
libquicktime-dev
ffmpeg
libavcodec-dev
libavc1394-0
libavc1394-dev
libdv4
libdv4-dev
libxv-dev
libxv1
libdts-dev
ftgl-dev
libimlib2
libimlib2-dev
libfreetype6
libfreetype6-dev
graphviz
libbz2-dev
zlib1g-dev
libice6
libice-dev
libsm6
libsm-dev
libxml2
libxml2-dev
libxext6
libxext-dev
libxt6
libxt-dev
libx11-6
libx11-dev
libgsl0-dev
libglu1-mesa
libglu1-mesa-dev
libavformat-dev
For Debian/stable, add these:
libmagick++6
libmagick++6-dev
libdps1
libdps-dev
For Debian/testing and Debian/unstable, add these:
libmagick++9c2a
libmagick++9-dev
libavifile-0.7c2
For Ubuntu/dapper, add these:
libavifile-0.7-dev
libmagick++9-dev
libmagick++9c2a
For building gridflow, you will need :
ruby1.9-dev
ruby1.9
libx11-dev
libpng12-dev
libmpeg3-dev
libquicktime-dev
libjpeg62-dev
xlibs-dev
You should use the version from the gridflow.ca CVS repository. Download it in a new directory as it is not self-contained. Type ./configure; make;. Then, you will need to manually copy the directory to anywhere you want it to be installed. Let say /usr/local/lib/pd/extra/gridflow.
Autobuilders
The Debian autobuilders are servers which automatically build all of the Debian packages. The Pd sources must be properly setup in order for this to work.
Checking out the code from CVS
The easy way to do checkout everything is to run this script where you want to put the Pd code: checkout-developer-layout.sh.
But you can also do it manually: How to download from the SourceForge CVS and Directory Layout for Developers
If you are planning on building Pd-extended, you need to checkout the version of Pd that Pd-extended is currently compiling against. This is because Pd-extended relies on a lot of patches, and these patches will only apply cleaning against a specific version. To check out 0.39.2, for example:
cvs -d:pserver:anonymous@pure-data.cvs.sourceforge.net:/cvsroot/pure-data login
cvs -z3 -d:pserver:anonymous@pure-data.cvs.sourceforge.net:/cvsroot/pure-data checkout -r v0-39-2 pd
Building
Before starting to compile Pd-extended, you will need to apply the patches. Make sure everything applied cleanly by watching the output.
cd pure-data/packages/ && make patch_pd
Once you have all of the sources and the patches are applied, you can start compiling. Try building the whole thing and see if it works for you:
cd linux_make
make install
It will then build for a while, and it should end up with all the binaries in pure-data/packages/linux_make/build. To make a tarball, run:
make package
then you'll see a .tar.bz2 in pure-data/packages/linux_make/build.
Wow thanks for the detail --badmuthahubbard, Sat, 15 Jul 2006 20:09:24 +0200 reply
I can't wait to try this.