Mudanças entre as edições de "Pd"

De Pontão Nós Digitais
(Building Pd-Extended for Development)
Linha 13: Linha 13:
 
=== Binary packages  ===
 
=== Binary packages  ===
  
Fefo:
+
Fefo:  
  
Baixei daki: http://puredata.info/community/projects/software/pd-extended<br>
+
Baixei daki: http://puredata.info/community/projects/software/pd-extended<br>  
  
Primeiro instalei o .deb do Maverick (10.10) e não deu certo. Meu ubuntu era 64 bits, e o .deb era 32 bits
+
Primeiro instalei o .deb do Maverick (10.10) e não deu certo. Meu ubuntu era 64 bits, e o .deb era 32 bits  
  
Como não tem 64bit do 10.10 instalei do Lucid(10.04) de 64bits, e também não funcionou.
+
Como não tem 64bit do 10.10 instalei do Lucid(10.04) de 64bits, e também não funcionou.  
  
Eu e o vilson ficamos quebrando a cabeça pra fazer funcionar direitinho, e NADA.
+
Eu e o vilson ficamos quebrando a cabeça pra fazer funcionar direitinho, e NADA.  
  
Conclusão: migrar para o ubuntu 32bits. Foi o que fiz, ai no ubuntu 32bits baixei o .deb do Maverick e funcionou e primeira.
+
Conclusão: migrar para o ubuntu 32bits. Foi o que fiz, ai no ubuntu 32bits baixei o .deb do Maverick e funcionou e primeira.  
  
 +
<br>
 +
 +
=== Building the Latest Pd-extended from Autobuild + Rsync (not ideal for development)  ===
 +
 +
To just build the entire bleeding-edge pd-extended, download the full thing using the rsync method as described in the instructions from:
  
=== Building the Latest Pd-extended from Autobuild + Rsync (not ideal for development) ===
 
To just build the entire bleeding-edge pd-extended, download the full thing
 
using the rsync method as described in the instructions from:
 
 
  http://puredata.info/docs/developer/GettingPdSource
 
  http://puredata.info/docs/developer/GettingPdSource
  
Then follow these instructions:
+
Then follow these instructions:  
 +
 
 
  http://puredata.info/docs/developer/AutoBuildProcess
 
  http://puredata.info/docs/developer/AutoBuildProcess
  
However, this option does not give any version control.
+
However, this option does not give any version control.  
  
=== Building Pd-Extended for Development ===  
+
=== Building Pd-Extended for Development ===
  
'''This section of the wiki moved into Pd's main site:
+
'''This section of the wiki moved into Pd's main site:''' [http://puredata.info/docs/developer/WorkingWithPdExtendedSources working with Pd Extended sources]. Write additional experiences that you have here.  
[http://puredata.info/docs/developer/WorkingWithPdExtendedSources working with Pd Extended sources].
+
Write additional experiences that you have here.'''
+
  
The information below is experimental. Please refer to the above link for the up-to-date information.
+
The information below is experimental. Please refer to the above link for the up-to-date information.  
  
 +
<br>
  
 +
==== Things that do *not* work  ====
  
==== Things that do *not* work ====
+
*The svn approach + linux-make using just the svn: this build gives a broken pd as of this date  
* The svn approach + linux-make using just the svn: this build gives a broken pd as of this date
+
*Build the pd-0.42 branch from svn using linux-make. This is not as good as the bleeding edge build described above, as of this date.
* Build the pd-0.42 branch from svn using linux-make. This is not as good as the bleeding edge build described above, as of this date.  
+
  
===== Compilando: '''modo errado''' =====
+
===== Compilando: '''modo errado''' =====
  
Pd:
+
Pd:  
  
 
  cd pd/pd/src
 
  cd pd/pd/src
Linha 61: Linha 63:
 
  sudo make install
 
  sudo make install
  
Gem:
+
Gem:  
  
 
  sudo apt-get install libmagick++-dev
 
  sudo apt-get install libmagick++-dev
Linha 69: Linha 71:
 
  ./configure
 
  ./configure
  
* opcionalmente, coloco uma opcao no configure, para desenvolver o Pd sem instalar:
+
*opcionalmente, coloco uma opcao no configure, para desenvolver o Pd sem instalar:
+
 
 
  ./configure --with-pd=/home/rfabbri/src/pd-repos/pd-svn/pd
 
  ./configure --with-pd=/home/rfabbri/src/pd-repos/pd-svn/pd
  
* finalmente
+
*finalmente
  
 
  make
 
  make
 
  sudo make install
 
  sudo make install
  
 
+
<br> pix_opencv:  
pix_opencv:
+
  
 
  ./configure --with-pd=$HOME/src/pd-repos/pd-svn/pd --with-gem=$HOME/src/pd-repos/pd-gem/Gem
 
  ./configure --with-pd=$HOME/src/pd-repos/pd-svn/pd --with-gem=$HOME/src/pd-repos/pd-gem/Gem
Linha 85: Linha 86:
 
  sudo make install
 
  sudo make install
  
(ajuste os caminhos para os sources do Pd e do Gem de acordo com o seu setup)
+
(ajuste os caminhos para os sources do Pd e do Gem de acordo com o seu setup)  
  
 +
<br> Terminando de instalar (perigo: instrucoes de novato; podem nao ser o melhor a fazer)
  
Terminando de instalar (perigo: instrucoes de novato; podem nao ser o melhor a fazer)
+
Instale o pix_opencv na mao caso queira usar o Pd sem instalar (eh o que eu faco para hacking)  
 
+
Instale o pix_opencv na mao caso queira usar o Pd sem instalar (eh o que eu faco para hacking)
+
  
 
  cd ~/src/pd-repos/pd-svn/externals/pix_opencv
 
  cd ~/src/pd-repos/pd-svn/externals/pix_opencv
 
  cp *pd_linux ~/src/pd-repos/pd-svn/pd/extra/
 
  cp *pd_linux ~/src/pd-repos/pd-svn/pd/extra/
  
 +
<br>
  
===== Rodando do Codigo de Desenvolvimento: '''modo errado''' =====
+
===== Rodando do Codigo de Desenvolvimento: '''modo errado''' =====
  
  echo 'alias pd=$HOME/src/pd-repos/pd-svn/pd/bin/pd' >> ~/.bash_aliases
+
  echo 'alias pd=$HOME/src/pd-repos/pd-svn/pd/bin/pd' &gt;&gt; ~/.bash_aliases
 
  . ~/.bash_aliases
 
  . ~/.bash_aliases
  
Agora eu vou no diretorio do Gem rodar o pd. Deve haver algo melhor a ser feito:
+
Agora eu vou no diretorio do Gem rodar o pd. Deve haver algo melhor a ser feito:  
  
 
  cd /home/rfabbri/src/pd-repos/pd-gem/Gem
 
  cd /home/rfabbri/src/pd-repos/pd-gem/Gem
 
  pd -lib Gem
 
  pd -lib Gem
  
Agora tudo esta disponivel!! Basta criar um novo bloco pix_opencv_edge por exemplo e constatar que '''nao''' fica tracejado.
+
Agora tudo esta disponivel!! Basta criar um novo bloco pix_opencv_edge por exemplo e constatar que '''nao''' fica tracejado.  
  
PS: Estou confirmando se este e' o melhor jeito na lista pd-dev.
+
PS: Estou confirmando se este e' o melhor jeito na lista pd-dev.  
  
=== PD + OpenCV a.k.a pdp_opencv / pix_opencv ===
+
=== PD + OpenCV a.k.a pdp_opencv / pix_opencv ===
  
====versao mais recente de desenvolvimento (recomendada) ====
+
==== versao mais recente de desenvolvimento (recomendada) ====
O puredata_opencv fica no repo comunitario do Pd, em Subversion, no diretorio externals/pix_opencv. No entanto, ele '''nao''' e' compilado pelo metodo do linux_make supracitado. Para compila-lo, veja o arquivo INSTALL. Veja tambem o subdiretorio examples, muito legal.
+
  
====versao "estavel" ====
+
O puredata_opencv fica no repo comunitario do Pd, em Subversion, no diretorio externals/pix_opencv. No entanto, ele '''nao''' e' compilado pelo metodo do linux_make supracitado. Para compila-lo, veja o arquivo INSTALL. Veja tambem o subdiretorio examples, muito legal.
  
Tenha o PD extended 0.42.5 binario já instalado (veja acima).
+
==== versao "estavel"  ====
  
Baixe os sources necessários (sim, você precisa do source do PD e GEM para poder compilar o external, mesmo já tendo ele instalado pelo apt-get):
+
Tenha o PD extended 0.42.5 binario já instalado (veja acima).
 +
 
 +
Baixe os sources necessários (sim, você precisa do source do PD e GEM para poder compilar o external, mesmo já tendo ele instalado pelo apt-get):  
  
 
     wget http://sourceforge.net/projects/pure-data/files/pd-extended/0.42.5/Pd-0.42.5-extended.tar.gz
 
     wget http://sourceforge.net/projects/pure-data/files/pd-extended/0.42.5/Pd-0.42.5-extended.tar.gz
    wget http://giss.tv/pd-opencv/pix_opencv-0.2-rc6.tar.gz
+
  wget http://giss.tv/pd-opencv/pix_opencv-0.2-rc6.tar.gz
    wget http://puredata.info/community/projects/software/gem/releases/0.92.3/gem-0.92-3.tar.gz
+
  wget http://puredata.info/community/projects/software/gem/releases/0.92.3/gem-0.92-3.tar.gz
  
Descompacte e coloque os códigos do PD e GEM em um local próprio (em Ubuntu, é o que segue):
+
Descompacte e coloque os códigos do PD e GEM em um local próprio (em Ubuntu, é o que segue):  
  
 
     mkdir -p pd-extended/src
 
     mkdir -p pd-extended/src
    tar xvzf Pd-0.42.5-extended.tar.gz
+
  tar xvzf Pd-0.42.5-extended.tar.gz
    tar xvzf pix_opencv-0.2-rc6.tar.gz
+
  tar xvzf pix_opencv-0.2-rc6.tar.gz
    tar xvzf gem-0.92-3.tar.gz
+
  tar xvzf gem-0.92-3.tar.gz
    mv Pd-0.42.5-extended pd-extended/src
+
  mv Pd-0.42.5-extended pd-extended/src
    mv gem-0.92-3 pd-extended/src
+
  mv gem-0.92-3 pd-extended/src
  
Agora vamos compilar o external pdp_opencv:
+
Agora vamos compilar o external pdp_opencv:  
  
 
     cd pix_opencv
 
     cd pix_opencv
    ./configure --with-pd=$HOME/pd-extended/src/Pd-0.42.5-extended/pd --with-gem=$HOME/pd-extended/src/gem-0.92-3
+
  ./configure --with-pd=$HOME/pd-extended/src/Pd-0.42.5-extended/pd --with-gem=$HOME/pd-extended/src/gem-0.92-3
    make
+
  make
  
E jogamos os externals compilados no diretório do PD, para ele poder usar:
+
E jogamos os externals compilados no diretório do PD, para ele poder usar:  
  
 
     cp *.pd_linux $HOME/pd-extended/extra/
 
     cp *.pd_linux $HOME/pd-extended/extra/
    cp *.pd $HOME/pd-extended/doc/5.reference
+
  cp *.pd $HOME/pd-extended/doc/5.reference
  
Feito, reinicie seu PD e Help -> Browser -> Pure Data -> 5.reference -> procure os pix_opencv_*
+
Feito, reinicie seu PD e Help -&gt; Browser -&gt; Pure Data -&gt; 5.reference -&gt; procure os pix_opencv_*  
  
 
== Hacking  ==
 
== Hacking  ==
  
*todo: informacoes sobre o codigo fonte e sua organizacao
+
*todo: informacoes sobre o codigo fonte e sua organizacao  
* Este link [http://puredata.info/docs/developer/DirectoryLayout] sugere que depois de baixar o Pd svn,
+
*Este link [http://puredata.info/docs/developer/DirectoryLayout] sugere que depois de baixar o Pd svn,
o subdir "pd" pode ser substituido pelo pd-extended do Git, depois uns symlinks sao realizados. Todo: confirmar na lista pd-dev
+
 
* Este link [http://puredata.info/docs/developer/GettingPdSource], na secao sobre svn, diz que quando uma nova release e' feita do pd-extended, ele pega tudo do SVN exceto o subdir 'pd', o qual e' atualizado com base no core presente no repo pd-extended.git
+
o subdir "pd" pode ser substituido pelo pd-extended do Git, depois uns symlinks sao realizados. Todo: confirmar na lista pd-dev  
 +
 
 +
*Este link [http://puredata.info/docs/developer/GettingPdSource], na secao sobre svn, diz que quando uma nova release e' feita do pd-extended, ele pega tudo do SVN exceto o subdir 'pd', o qual e' atualizado com base no core presente no repo pd-extended.git
 +
 
 +
=== Externals ===
 +
 
 +
An external is a class that is not built into pd but is loaded at runtime. Once loaded into pd's memory, externals cannot be distinguished from internals any more.
 +
 
 +
Um external é uma classe que não é construida no pd (geralmente C ou C++), mas é carregada em tempo real. Uma vez carregada na memória do pd, externals não podem mais serem distinguidos dos internals.
 +
 
 +
- Como criar suas [externals].
  
 
== Referencias  ==
 
== Referencias  ==

Edição das 22h17min de 26 de outubro de 2011

Pure data.

Instalacao

  • Instale sempre o Pd extended.
  • Obrigado por sempre instalar o PD extended
  • Dê preferência ao pd-extended pois ele possui os externals necessários para a maior parte das aplicações
  • «hick209: você instalou o PD e Gem não veio junto? instalasse o pdextended? eu acho que não...
  • Sacou? Então não dê pala.


Binary packages

Fefo:

Baixei daki: http://puredata.info/community/projects/software/pd-extended

Primeiro instalei o .deb do Maverick (10.10) e não deu certo. Meu ubuntu era 64 bits, e o .deb era 32 bits

Como não tem 64bit do 10.10 instalei do Lucid(10.04) de 64bits, e também não funcionou.

Eu e o vilson ficamos quebrando a cabeça pra fazer funcionar direitinho, e NADA.

Conclusão: migrar para o ubuntu 32bits. Foi o que fiz, ai no ubuntu 32bits baixei o .deb do Maverick e funcionou e primeira.


Building the Latest Pd-extended from Autobuild + Rsync (not ideal for development)

To just build the entire bleeding-edge pd-extended, download the full thing using the rsync method as described in the instructions from:

http://puredata.info/docs/developer/GettingPdSource

Then follow these instructions:

http://puredata.info/docs/developer/AutoBuildProcess

However, this option does not give any version control.

Building Pd-Extended for Development

This section of the wiki moved into Pd's main site: working with Pd Extended sources. Write additional experiences that you have here.

The information below is experimental. Please refer to the above link for the up-to-date information.


Things that do *not* work

  • The svn approach + linux-make using just the svn: this build gives a broken pd as of this date
  • Build the pd-0.42 branch from svn using linux-make. This is not as good as the bleeding edge build described above, as of this date.
Compilando: modo errado

Pd:

cd pd/pd/src
autoreconf -vi
./configure
make depend
make
sudo make install

Gem:

sudo apt-get install libmagick++-dev
cd pd-gem/Gem/src
./autogen.sh
./configure
  • opcionalmente, coloco uma opcao no configure, para desenvolver o Pd sem instalar:
./configure --with-pd=/home/rfabbri/src/pd-repos/pd-svn/pd
  • finalmente
make
sudo make install


pix_opencv:

./configure --with-pd=$HOME/src/pd-repos/pd-svn/pd --with-gem=$HOME/src/pd-repos/pd-gem/Gem
make
sudo make install

(ajuste os caminhos para os sources do Pd e do Gem de acordo com o seu setup)


Terminando de instalar (perigo: instrucoes de novato; podem nao ser o melhor a fazer)

Instale o pix_opencv na mao caso queira usar o Pd sem instalar (eh o que eu faco para hacking)

cd ~/src/pd-repos/pd-svn/externals/pix_opencv
cp *pd_linux ~/src/pd-repos/pd-svn/pd/extra/


Rodando do Codigo de Desenvolvimento: modo errado
echo 'alias pd=$HOME/src/pd-repos/pd-svn/pd/bin/pd' >> ~/.bash_aliases
. ~/.bash_aliases

Agora eu vou no diretorio do Gem rodar o pd. Deve haver algo melhor a ser feito:

cd /home/rfabbri/src/pd-repos/pd-gem/Gem
pd -lib Gem

Agora tudo esta disponivel!! Basta criar um novo bloco pix_opencv_edge por exemplo e constatar que nao fica tracejado.

PS: Estou confirmando se este e' o melhor jeito na lista pd-dev.

PD + OpenCV a.k.a pdp_opencv / pix_opencv

versao mais recente de desenvolvimento (recomendada)

O puredata_opencv fica no repo comunitario do Pd, em Subversion, no diretorio externals/pix_opencv. No entanto, ele nao e' compilado pelo metodo do linux_make supracitado. Para compila-lo, veja o arquivo INSTALL. Veja tambem o subdiretorio examples, muito legal.

versao "estavel"

Tenha o PD extended 0.42.5 binario já instalado (veja acima).

Baixe os sources necessários (sim, você precisa do source do PD e GEM para poder compilar o external, mesmo já tendo ele instalado pelo apt-get):

   wget http://sourceforge.net/projects/pure-data/files/pd-extended/0.42.5/Pd-0.42.5-extended.tar.gz
  wget http://giss.tv/pd-opencv/pix_opencv-0.2-rc6.tar.gz
  wget http://puredata.info/community/projects/software/gem/releases/0.92.3/gem-0.92-3.tar.gz

Descompacte e coloque os códigos do PD e GEM em um local próprio (em Ubuntu, é o que segue):

   mkdir -p pd-extended/src
  tar xvzf Pd-0.42.5-extended.tar.gz
  tar xvzf pix_opencv-0.2-rc6.tar.gz
  tar xvzf gem-0.92-3.tar.gz
  mv Pd-0.42.5-extended pd-extended/src
  mv gem-0.92-3 pd-extended/src

Agora vamos compilar o external pdp_opencv:

   cd pix_opencv
  ./configure --with-pd=$HOME/pd-extended/src/Pd-0.42.5-extended/pd --with-gem=$HOME/pd-extended/src/gem-0.92-3
  make

E jogamos os externals compilados no diretório do PD, para ele poder usar:

   cp *.pd_linux $HOME/pd-extended/extra/
  cp *.pd $HOME/pd-extended/doc/5.reference

Feito, reinicie seu PD e Help -> Browser -> Pure Data -> 5.reference -> procure os pix_opencv_*

Hacking

  • todo: informacoes sobre o codigo fonte e sua organizacao
  • Este link [1] sugere que depois de baixar o Pd svn,

o subdir "pd" pode ser substituido pelo pd-extended do Git, depois uns symlinks sao realizados. Todo: confirmar na lista pd-dev

  • Este link [2], na secao sobre svn, diz que quando uma nova release e' feita do pd-extended, ele pega tudo do SVN exceto o subdir 'pd', o qual e' atualizado com base no core presente no repo pd-extended.git

Externals

An external is a class that is not built into pd but is loaded at runtime. Once loaded into pd's memory, externals cannot be distinguished from internals any more.

Um external é uma classe que não é construida no pd (geralmente C ou C++), mas é carregada em tempo real. Uma vez carregada na memória do pd, externals não podem mais serem distinguidos dos internals.

- Como criar suas [externals].

Referencias