====== SliTAZ et PureData ======
La solution accessible tout de suite grace à la compatibilité des paquets Slackware et de recupérer un aquet pd quelques part ...
* [[http://packages.zenwalk.org/?p=pd-0.42.5-i686-62.1.tlz&zversion=current | sur ZenWalk par exemple ]] .
* [[ http://slackbuild.org/repository/12.0/multimedia/pd/ | chez slackbuild ]]
Sauf que ce paquet n'est que le pd de base :(
Mais c'est piste pour avoir le stricte nécéssaire dans l'esprit SliTAZ, que nous explorerons plus tard
===== SliTAZ et une recette pour PureData =====
L'idée est de mettre à disposition une recette SliTAZ qui permetra à travers le wok (cf :[[ http://www.slitaz.org/fr/doc/cookbook/wok-tools.html| notion de wok et de recette ]] ) de recuperer, compiler et fabriquer un paquet PureData
Une présentation de Puredata par [[
http://www.linuxmao.org/tikiwiki/tiki-index.php?page=Puredata|la sur LinuxMAO ]]
et des pages de ressources [[ http://www.artlabo.org/wakka.php?wiki=puredata | sur ArtLAbo]] ou [[ http://apo33.org/bookmarks/doku.php?id=puredata | sur APO33 ]]
[[http://labwindows.free.fr/dotclear/]]
===== Compilation de test Pd-0.41.4-extended =====
cf : [[http://wiki.puredata.info/fr/Compiler_sous_Debian_et_Ubuntu]]
cd /usr/src
tazpkg get-install subversion
wget http://downloads.sourceforge.net/pure-data/Pd-0.41.4-extended.tar.bz2
tar xvfz Pd-0.41.4-extended.tar.bz2
cd pd Pd-0.41.4-extended
scripts/checkout-developer-layout.sh
for i in "
autoconf automake m4 expat fontconfig freetype libtool \
libpng-dev xorg-libX11-dev xorg-libs gsl gsl-dev \
alsa-lib alsa-lib-dev jack-audio-connection-kit jack-audio-connection-kit-dev \
xorg-libX11 xorg-xproto lame lame-dev libsndfile libsndfile-dev libasound2 libasound2-dev \
libogg0 libogg-dev libvorbis0a libvorbisenc2 libvorbisfile3 libvorbis-dev speex speex-dev \
libflac-dev libsndfile1 libsndfile1-dev fftw3 fftw3-dev ladspa-sdk libsamplerate libflac6 \
imlib2 imlib2-dev tiff-dev jpeg-dev freetype2-dev mesa-dev ffmpeg-dev \
liblo0 liblo0-dev libxcb tcl tcl-dev tk tk-dev zlib zlib-dev"
do
tazpkg get-install $i
done
wget http://www.in2dwok.com/downloads/fftw-3.2.tazpkg
tazpkg install ./fftw-3.2.tazpkg
wget http://www.in2dwok.com/downloads/fftw-dev-3.2.tazpkg
tazpkg install ./fftw-dev-3.2.tazpkg
wget http://www.in2dwok.com/downloads/fltk2-2.0.x-r6403.tazpkg
tazpkg install ./fltk2-2.0.x-r6403.tazpkg
wget http://www.in2dwok.com/downloads/ladspa_sdk-1.13.tazpkg
tazpkg install ./ladspa_sdk-1.13.tazpkg
wget http://www.in2dwok.com/downloads/liblo-dev-0.25.tazpkg
tazpkg install ./liblo-dev-0.25.tazpkg
wget http://www.in2dwok.com/downloads/liblo-0.25.tazpkg
tazpkg install ./liblo-0.25.tazpkg
wget http://asimo.dyndns.org:1080/pub/slitaz/2.0/packages/libfftw3-3.2.1.tazpkg
tazpkg install ./libfftw3-3.2.1.tazpkg
wget http://asimo.dyndns.org:1080/pub/slitaz/2.0/packages/libfftw3-dev-3.2.1.tazpkg
tazpkg install ./libfftw3-dev-3.2.1.tazpkg
wget http://asimo.dyndns.org:1080/pub/slitaz/2.0/packages/libjack-0.109.2.tazpkg
wget http://asimo.dyndns.org:1080/pub/slitaz/2.0/packages/libjack-dev-0.109.2.tazpkg
tazpkg install ./libjack-0.109.2.tazpkg
tazpkg install ./libjack-dev-0.109.2.tazpkg
#wget http://mirror.drustvo-dns.si/slitaz/packages/1.0/lame-3.97.tazpkg
Petites modif ...
modif du packages/linux_make/Makefile pour passer le mtune=i686 en mtune=i486 -march=i386
Supprimer GEM et pdp et pidip du Pd-0.41.4-extended/externals/Makefile pour ne pas se preoccuper d'openGL ;-)
Lancement de la compile par
./Pd-0.41.4-extended/packages/linux_make/make install
Comme les divers scripts du pd-extended sont assez dépendant de Debian, il faut un peu bricoler pour arriver à bout.
Je propose de travailler en revenant en arriere dans ce développement. Découpons les extensions pd en autant de modules que nécéssaire. Il faudra savoir ce dont on a besoin pour faire marcher un patch pd, mais on aura gagner une place maximum !
===== Mise en place de la recette Pd-0.41.4-extended =====
Vu le souk dans les repertoires et les différentes manières de compiler le tout, j'ai trouvé une recette qui a l'air de fonctionner.
# SliTaz package receipt.
PACKAGE="pd-extended"
VERSION="0.41.4-extended"
SOURCE="Pd"
CATEGORY="multimedia"
SHORT_DESC="A real-time graphical programming environment with many patchs."
MAINTAINER="gepeto@du-libre.org"
DEPENDS="alsa-lib expat fontconfig freetype jack-audio-connection-kit libX11 xorg-libs libsamplerate libxcb tcl tk zlib"
WEB_SITE="http://puredata.info"
TARBALL="$SOURCE-$VERSION.tar.bz2"
WGET_URL="http://downloads.sourceforge.net/pure-data/$TARBALL"
DEPENDS="
alsa-lib fontconfig freetype2 libtool
jack-audio-connection-kit xorg-libX11 xorg-libs
libasound2 libogg0 libvorbis0a libvorbisenc2
libsndfile libvorbisfile3 libsamplerate
liblo0 libxcb tcl tk zlib
speex fftw3 ladspa-sdk libflac6
lame "
BUILD_DEPEND="
expat autoconf automake m4 alsa-lib-dev freetype2-dev
jack-audio-connection-kit-dev libasound2-dev libogg-dev
libsndfile-dev libvorbis-dev liblo0-dev tk-dev tcl-dev zlib-dev
speex-dev fftw3-dev liblo0-dev lame-dev libflac-dev
"
# Rules to configure and make the package.
compile_rules()
{
cd ./$SOURCE-$VERSION
cd packages
#make patch
cd linux_make
export src=`pwd`
#./configure --prefix=/usr --infodir=/usr/share/info \
#--mandir=/usr/share/man $CONFIGURE_ARGS
#make
make DESTDIR=$src/../../_pkg install
}
# Rules to gen a SliTaz package suitable for Tazpkg.
genpkg_rules()
{
strip -s $_pkg/usr/bin/pd*
find $_pkg/usr/lib/pd -name "*pd_linux" -exec strip {} \;
mkdir -p $fs/usr/bin
mkdir -p $fs/usr/lib/pd
mkdir -p $fs/usr/include
mkdir -p $fs/usr/share/pixmaps
mkdir -p $fs/usr/share/applications
mkdir -p $fs/usr/share/mime/audio
cp -a $_pkg/usr/bin/* $fs/usr/bin/
cp -a $_pkg/usr/lib/pd $fs/usr/lib/
cp -a $_pkg/../abstractions $fs/usr/lib/pd
cp -a $_pkg/../doc $fs/usr/lib/pd
cp -a $_pkg/usr/include/m_pd.h $fs/usr/include/
cp -a $SOURCE-$VERSION/packages/linux_make/pd*.png $fs/usr/share/pixmaps
cp -a $SOURCE-$VERSION/packages/linux_make/pd*.desktop $fs/usr/share/app
cp -a $SOURCE-$VERSION/packages/linux_make/pd*.xml $fs/usr/share/mime/au
cp -a $SOURCE-$VERSION/packages/linux_make/default.pdsettings $fs/usr/li
}
Cela donne le paquet
{{:gnu:pd-extended-0.41.4-extended.tazpkg|}}
===== Mise en place de la recette pd vanilla=====
Commençons par le début, nous choisirons la version vanilla pour rester dans le minimaliste.
En suivant la documentation du wok on peut construire la recette
PACKAGE="pd"
VERSION="0.42.5"
CATEGORY="multimedia"
SHORT_DESC="A real-time graphical programming environment."
MAINTAINER="gepeto@du-libre.org
DEPENDS="
alsa-lib fontconfig freetype
jack-audio-connection-kit xorg-libX11
libasound2 libogg libvorbis libvorbisenc2
libsndfile libsamplerate
liblo libxcb tcl tk zlib
lame ladspa_sdk"
#speex libfftw3 ladspa_sdk libflac6
BUILD_DEPEND="
expat autoconf automake m4 xorg-proto alsa-lib-dev freetype-dev
jack-audio-connection-kit-dev libasound2-dev libogg-dev
libsndfile-dev libvorbis-dev liblo-dev tk-dev tcl-dev zlib-dev
"
#speex-dev lifftw3-dev lame-dev libflac-dev
WEB_SITE="http://crca.ucsd.edu"
TARBALL="$PACKAGE-$VERSION.src.tar.gz"
WGET_URL="http://crca.ucsd.edu/~msp/Software/$TARBALL"
# alternative http://downloads.sourceforge.net/project/pure-data/pure-data/0.42.5/pd-0.42-5.src.tar.gz?use_mirror=freefr
# Rules to configure and make the package.
compile_rules()
{
src=$PACKAGE-$VERSION/src
cd $src
./configure --prefix=/usr --infodir=/usr/share/info \
--mandir=/usr/share/man $CONFIGURE_ARGS &&
make &&
make DESTDIR=../_pkg install
}
# Rules to gen a SliTaz package suitable for Tazpkg.
genpkg_rules()
{
mkdir -p $fs/usr
cp -a $_pkg/usr $fs/usr
}
Cela donne le paquet {{:gnu:pd-0.42-5.tazpkg|}}
====== slitaz-puredata ======
**pd-extended +**
* toutes les abstractions contenues dans les sources
* pdmtl de [[http://wiki.dataflow.ws/PdMtl]]
* metastudio-0.3 de [[http://www.sharktracks.co.uk/puredata/]]
* netpd de [[http://www.netpd.org/]]
* AudioFlow 1.0 [[http://www.hackitectura.net/aljwarizmi/|al-jwarizmi]] cf http://rama.xicnet.com/?page=appz
a suivre..