Personal tools
You are here: Home members jb's Home Installing PD externals HOWTO
Document Actions

Installing PD externals HOWTO

by Jamie Bullock last modified 2017-07-29 07:02 PM

A HOWTO for those who are new to installing externals for PD.



For an up-to-date guide see: How Do I Install Externals And Help Files? (July 2017)




The text below is kept for historical reasons:


Installing PD externals HOWTO

Jamie Bullock

Revision History
Revision 225 August 2006JB
Modified.

Abstract

This HOWTO provides basic information about how to install externals for the Pure Data software by Miller Puckette

This HOWTO assumes that you already have a working installation of the Pure Data (PD) software.

Comments and suggestions are welcome via the email link on my website here


Introduction

The word 'external' is used to mean 'external PD class', as opposed to an internal PD class included with the PD application. PD externals are binary files that contain functions that can be used by PD. A PD library is a binary file that contains multiple externals. [metro] is an example of an internal class, [demux] from the zexy library is an example of an external class

If you are impatient and just want an installation example, click here

Finding and downloading externals

From CVS

The most recent versions of many of the available PD externals can be found at the CVS repository, which can be browsed here:

NOTE: The CVS is a development tool; although it may contain the most recent versions of the source for externals, it may not contain the most stable versions

In order to checkout (download) an external or library from the CVS, you will need a CVS client. Examples include

Once you have a CVS client, use the following command to login:

  • cvs -d:pserver:anonymous@pure-data.cvs.sourceforge.net:/cvsroot/pure-data login

When prompted for a password, just press enter.

Use the following command to download:

  • cvs -z3 -d:pserver:anonymous@pure-data.cvs.sourceforge.net:/cvsroot/pure-data co -P modulename

The module name should be of the form: externals/externaldirectoryname. To download all externals, the modulename should simply be externals

If you have used CVS to download external(s) skip to here for notes on installation.

See here for an example.

From a package repository

If you are running Linux on your computer, it is likely that you will have access to some form of package system such as RPM or portage. And also possibly a package manager such as apt

Many of the repositories for linux packages now contain PD externals and libraries. Examples of these can be found at Planet CCRMA and Debian

To download a library using apt (Debian) type:

  • apt-get install packagename

To use emerge (Gentoo), type:

  • emerge packagename

If you have obtained an RPM containing a library or external skip to this section

From individual authors

Externals can also be found from many other sources. These include individual authors' websites, puredata.info, the Pure Data base and the externals repository

Authors usually distribute their externals in a compressed archive, such as a zip file or a tarred and gzipped archive. The archive usually license information, source code, documentation, and sometimes binary versions of the external(s). If there is insufficient documentation distributed with the external, contact the author or the pure-data mailing list

Examples of external authors' websites can be found at the PD Webring

Installing externals in binary form

Installing from RPM

If you have obtained an RPM file containing external(s), simply type:

  • rpm -ivh external.rpm

You will need to have root privileges to do this, so you either need to precede the command with sudo, or use su - to change to a root shell.

Installing an individual binary

If you are lucky enough to have a binary version of the external or library, which is in a binary format compatible with your hardware and operating system, then all you need to do is ensure that the file is placed in a location that is part of PD's search path.

For example if you have a library of the form blah.pd_myOS, you should put it somewhere like /usr/local/lib/pd/extra and ensure that your PD search path contains this directory.

Installing externals from source code

If the archive you have downloaded only contains source code (files ending in .c, .cpp or .h), you will need to compile this source code to make binary file(s)

There is no generic way to compile PD externals. Sometimes the compiler is invoked directly, but usually there is some scripting system such as make or scons.

NOTE: there are usually some installation instructions included with source code for externals. These will be in a file called INSTALL, README, install.txt, or similar. This should be read before continuing.

Using make

Very common (on unixes):

For this you will need the make utility and a compiler installed.

  • ./configure (builds the correct Makefile for your system)

  • make (runs the relevant build commands in the Makefile)

  • make install (places the compiled files in the correct directories;

You usually need root privileges to run make install

Using scons

Also becoming more popular is scons. For this you will need Python, a compiler and scons installed. The commands are as follows:

  • scons

  • scons install(usually as root)

An easy way to install _all_ the externals from the CVS is to download all the externals as described here, then do:

  • cd externals/build

  • scons

  • sudo scons install

Examples

Zexy

If you want to install zexy from CVS you need to do the following:

  • cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/pure-data login

  • cvs -z3 -d:pserver:anonymous@pure-data.cvs.sourceforge.net:/cvsroot/pure-data co -P externals/zexy

  • cd externals/zexy/src

  • aclocal (for this you will need the autoconf utility [part of Autotools] installed)

  • autoconf

  • ./configure

  • make

  • sudo make install

Troubleshooting

If you have problems installing an external or library:

  1. Make sure you have read all of the documentation included with the external thoroughly, and followed it exactly.

  2. Search the Pure Data mailing list archives here to check if your problem has come up before.

  3. Ask the PD mailing list for help. Details can be found here.

  4. Ask the external's author for help.


Powered by IEM Powered by Plone Section 508 WCAG Valid XHTML Valid CSS Usable in any browser