How do I install externals and help files?
Up to Table of ContentsThis FAQ applies to: Any version.
There are special folders for installing libraries, externals, objectclasses, abstractions, GUI plugins, and help files into. These folders are for things that are not included in Pd itself, and they are separate from Pd so that you can upgrade Pd without messing up your other files.
On all platforms, there is a user-specific folder and a global folder:
GNU/Linux
- User-specific
~/pd-externals- Global
/usr/local/lib/pd-externals
Mac OS X
- User-specific
~/Library/Pd- Global
/Library/Pd
Windows
- User-specific
%AppData%\Pd%AppData%\Pdwill be something likeC:\Documents and Settings\myusername\Application Data\Pd- this is mostly synonymous with
%UserProfile%\Application Data\Pd %UserProfile%is your home folder, on an English system, it is usuallyC:\Documents and Settings\myusername
- Global
%CommonProgramFiles%\Pd- on an English system, this is usually
C:\Program Files\Common Files\Pd - en espaƱol:
\Archivos de programa\Archivos comunes\Pd - auf Deutsch:
\Programme\Gemeinsame Dateien\Pd - this is mostly synonymous for
%ProgramFiles%\Common Files\Pd(%ProgramFiles% is where your programs are installed)
- on an English system, this is usually
Other versions of Pd
This was included in Pd-vanilla in version 0.43, and in Pd-extended in version 0.41.
Discussion
These choices of directories has been discussed quite a bit. If you are interested in reading about how they were chosen, then read the:
http://lists.puredata.info/pipermail/pd-list/2008-06/063086.html
http://lists.puredata.info/pipermail/pd-list/2008-07/063769.html (?)
http://lists.puredata.info/pipermail/pd-dev/2009-04/013302.html (?)
Discussion (Linux specific)
Here are some references to discussion about storing architecture-dependent binaries somewhere in $HOME.
http://lists.freedesktop.org/archives/xdg/2009-June/010716.html (nicknaming architecture/OS)
http://lists.freedesktop.org/archives/xdg/2008-November/010010.html (.local/share, .local/lib, $HOME/lib, or what?)
http://lists.freedesktop.org/archives/xdg/2007-November/009029.html (All binaries should go to either $prefix/bin or $prefix/lib{,64} - these are the only directories guaranteed to be mounted with exec rights and not shared across different architectures (as is sometimes done for /$prefix/share))
http://lists.freedesktop.org/archives/xdg/2007-November/009030.html (If the plugins are dlopened objects, my opinion is that they are right in a subdir of $prefix/lib{,64})