[PD-dev] build instructions for pd-extended

Ricardo Fabbri rfabbri at gmail.com
Wed Sep 28 23:00:03 CEST 2011


Hi,

My friend Vilson Vieira and I were able to generate the latest
full-fledged Pd-extended using two methods. I can give the details in
a later email, but basically:

method1: rsync+autobuild as you mentioned. worked after some basic
dependence installations. the downside is that this is not the best
option for development, but mainly for building the latest Pd only.

method2: download Pd from svn, then pd-extended.git and Gem, ans use
the linux-make approach. This provides for a full development tree
which makes it easy to push commits and make patches, as well as
updating from the repos. I had to modify the pd-svn tree to mimick
what was done for the rsync'd tree. Basically this involves moving the
'pd' subdir to something else, like 'pd-original', then linking
pd-extended.git to  'pd' inside pd-svn. Then do something similar for
Gem: link gem-svn to pd-svn/Gem and pd-svn/extensions/Gem.  Then I
went to pd-svn/packges/linux_make, and typed "make install" to
generate a .deb package, which I then installed using dpkg -i.

The generated packages for 32bit (using method1) and 64bit (using
method2) have been posted in:
 http://hera.ethymos.com.br:1080/pd/

Perhaps they can be useful for some alpha-testing as we are already
doing locally at our Lab Macambira (labmacambira.sf.net).

I really feel that method 2 got us into Pd development now. The build
works very well as far as we have tested. Perhaps this establishes a
good enough workflow (update->develop->build->test->commit) that I
think it might be time to provide commit access, if you agree.
Following SVNCommitAccess, this is the requested info:

My name is Ricardo Fabbri and I have been working with free software
since 1999, specializing in computer vision and image processing.
During my PhD I worked on 3D reconstruction algorithms and camera
self-calibration, and have also worked for Google in applications of
this technology for the scanning and indexing of books and other print
material. I have recently returned to Brazil where I helped found the
free software group Lab Macambira (labmacambira.sf.net), together with
my brother Renato Fabbri, Vilson Vieira, and others. We are currently
a team of 15.

My brother had a significant influence in Pd Con that was held in
Brazil, as well as in the rise of the Brazilian Pd community. My
brother is a composer and is doing graduate work in computational
physics. I was actually the one who introduced him to Pd and Linux
back in the days when he was dependant on Max. We were also joined by
Gilson Beck, another composer who got hooked on Pd. Currently, my
direct interests with Pd deveolpment are to support the demands from
these composers, but, mainly, to support Pd as a core component of our
real-time video processing stack. We use Pd for guiding C++ modules
linked to OpenCV and VXL.
We also use Scilab as a quick prototyping language for new algorithms.
As you can see, Pd is the guiding master of our systems, so it is
crucial for us to have a development gripo on it. Commit access is
important as we would like to develop this key component with you. You
can count on our painstaking care not to break anything and our
willing service to improve Pd. Perhaps with a commit access it will
make it easier to do small improvements and documentation, for a
start.

SF user: ricardofabbri.
Optionally, Vilson's SF user: vilsonvieira and My brother's: greenkobold

Best regards,
Ricardo
--
Linux registered user #175401
www.lems.brown.edu/~rfabbri



On Wed, Sep 28, 2011 at 12:19 AM, Hans-Christoph Steiner <hans at at.or.at> wrote:
>
> The easiest way to get started build Pd-extended is how the nightly builds
> are done.  Start by getting the source using the rsync method and then
> running the build script:
>
> http://puredata.info/docs/developer/AutoBuildProcess
>
> The whole build process has lots of hacks and kludges in it, which we are in
> the process of disentangling.  Two notable efforts along those lines are the
> Library Template:
>
> http://puredata.info/docs/developer/LibraryTemplate
>
> And submitting lots of libs to Debian:
>
> http://qa.debian.org/developer.php?login=hans%40eds.org
> http://qa.debian.org/developer.php?login=zmoelnig@iem.at
> http://qa.debian.org/developer.php?login=reduzent@gmail.com
>
> .hc
>
>
> On Sep 27, 2011, at 6:15 PM, Ricardo Fabbri wrote:
>
>> Other problems with pd from Subversion:
>>
>> - my GUI cannot pan/scroll large patches. A scroll bar is missing and
>> there is no way to scroll.
>> - I don't have a help browser.
>>
>> Thanks in advance for your guidance,
>> Ricardo
>> --
>> Linux registered user #175401
>> www.lems.brown.edu/~rfabbri
>>
>>
>>
>> On Tue, Sep 27, 2011 at 7:13 PM, Ricardo Fabbri <rfabbri at gmail.com> wrote:
>>>
>>> Hans,
>>>
>>> I think I will stick to the patch format for now. Let me report my
>>> build adventures for the day so that someone can give some advice.
>>>
>>> I would like to build a full pd-extended from development source code.
>>> It seems to be a bit complicated, but I tried at least to build the
>>> stuff I need.
>>>
>>> The first problem I got is that the pd built from SVN doesn't runn off
>>> of /usr/local/bin but only runs from its own source dir. This is what
>>> I did on Pd-svn:
>>>
>>>  cd pd/pd/src
>>>  autoreconf -vi
>>>  ./configure
>>>  make depend
>>>  make
>>>  sudo make install
>>>
>>> Then when I rund pd it just hangs.. Running pd -verbose gives:
>>> Pd version 0.42-5
>>> compiled 15:33:07 Sep 27 2011
>>> port 5403
>>> TCL_LIBRARY="/usr/local/lib/pd/lib/tcl/library"
>>> TK_LIBRARY="/usr/local/lib/pd/lib/tk/library"   wish
>>> "/usr/local/lib/pd/tcl/pd-gui.tcl" 5403
>>> Waiting for connection request...
>>> ... connected
>>>
>>> I tried with both wish 8.4 and 8.5.
>>>
>>> The way I managed to run it was just through the source dir.
>>>  pd/pd/bin/pd
>>>
>>> Next, I built Gem from svn (but kinda tailored to the Pd source code
>>> dir since that's what I managed to run):
>>>  cd pd-gem/Gem/src
>>>  ./autogen.sh
>>>  ./configure --with-pd=$HOME/src/pd/pd
>>>  make
>>>  sudo make install
>>>
>>> Finally, pix_opencv:
>>>  ./configure --with-pd=$HOME/src/pd/pd --with-   gem=$HOME/src/pd-gem/Gem
>>>  make
>>>  sudo make install
>>>
>>>
>>> I noticed pix_opencv installs cleanly onto the Pd source dir but Gem
>>> just insists on using /usr/local no matter what.
>>>
>>> I was able to install Pd using gem like this:
>>>
>>>  cd $HOME/src/pd-gem/Gem
>>>  $HOME/src/pd/pd/bin/pd -lib Gem
>>>
>>> Not to speak about compiling+installing iemmatrix, which should be
>>> simple, similar to pix_opencv, if only pd would run out of /usr/local
>>> which it isn't.
>>>
>>> I appreciate any help, even if just a small guiding remark.
>>> Ricardo
>>> --
>>> Linux registered user #175401
>>> www.lems.brown.edu/~rfabbri
>>>
>>>
>>>
>>> On Tue, Sep 27, 2011 at 5:23 PM, Hans-Christoph Steiner <hans at at.or.at>
>>> wrote:
>>>>
>>>> Hey Ricardo,
>>>>
>>>> If you want commit access, here is the process, its pretty simple:
>>>>
>>>> http://puredata.info/docs/developer/SVNCommitAccess
>>>>
>>>> We do need work out the flow before you start directly committing.  The
>>>> rule
>>>> of the pure-data SVN is that you need to have explicit permission to
>>>> each
>>>> file that you want to work on.  Usually this goes on a
>>>> library-by-library
>>>> basis, for example puredata_opencv. You just ask on pd-dev for
>>>> permission.
>>>>
>>>> For things that are directly maintained in SVN, it makes sense to commit
>>>> directly there.  For things that are maintained in git, then you should
>>>> make
>>>> your own fork of pd-extended.git, and submit 'git format-patch' files to
>>>> the
>>>> patch tracker.
>>>>
>>>> Either way, starting by submitting patches to the tracker would be the
>>>> best
>>>> way to start.  There is no barrier, you can do that now.
>>>>
>>>> .hc
>>>>
>>>> On Sep 27, 2011, at 2:15 AM, Ricardo Fabbri wrote:
>>>>
>>>>> Hello Hans,
>>>>>
>>>>> Thanks for the quick reply. We will be targeting Linux, mostly Ubuntu
>>>>> 11.04.
>>>>>
>>>>> I would like to develop using a branch in such a way that I can easily
>>>>> push the changes to you through patches or by committing. I am a bit
>>>>> hesitant to develop a release branch instead of the main branch
>>>>> directly, since I might be repeating work.
>>>>>
>>>>> I already talked to the puredata_opencv guys and they are willing to
>>>>> let me commit code, as long as I discuss the changes before modifying
>>>>> existing functionality.
>>>>>
>>>>> My username is ricardofabbri just in case, although I totally
>>>>> understand it might be too early for commit privileges, given that I
>>>>> haven't even settled on a workflow.
>>>>>
>>>>> Best regards,
>>>>> Ricardo
>>>>> --
>>>>> Linux registered user #175401
>>>>> www.lems.brown.edu/~rfabbri
>>>>>
>>>>>
>>>>>
>>>>> On Tue, Sep 27, 2011 at 2:20 AM, Hans-Christoph Steiner <hans at at.or.at>
>>>>> wrote:
>>>>>>
>>>>>> Hey Ricardo,
>>>>>>
>>>>>> This is great news!  Yes, its true, the sources are a bit confusing.
>>>>>>  Website updates are a good thing.  If you are talking about
>>>>>> Pd-extended,
>>>>>> then all sources are from
>>>>>> https://pure-data.svn.sourceforge.net/svnroot/pure-data/trunk, except
>>>>>> for
>>>>>> the core 'pd' part, which is from the pd-extended.git.  Once we have
>>>>>> the
>>>>>> 0.43 release branch, which is soon, then everything will be in this
>>>>>> SVN
>>>>>> branch:
>>>>>>
>>>>>>
>>>>>>
>>>>>> https://pure-data.svn.sourceforge.net/svnroot/pure-data/branches/pd-extended/0.43
>>>>>>
>>>>>> You can see the 0.42 release branch here:
>>>>>>
>>>>>>
>>>>>> https://pure-data.svn.sourceforge.net/svnroot/pure-data/branches/pd-extended/0.42
>>>>>>
>>>>>> Which platform are you going to be targetting?
>>>>>>
>>>>>> .hc
>>>>>>
>>>>>> On Sep 27, 2011, at 12:49 AM, Ricardo Fabbri wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I would like to help out with the development of Pd, in particular
>>>>>>> with Gem and puredata_opencv. Please be patient as I am just starting
>>>>>>> with Pd development.
>>>>>>>
>>>>>>> I would like to get some advice from you on how to build from the
>>>>>>> develpment sources. I can then update the community website
>>>>>>> instructions based on your responses, if you think that'd be helpful.
>>>>>>>
>>>>>>> I would like to install pd-extended, gem, and pix_opencv from the
>>>>>>> development source code.
>>>>>>>
>>>>>>> It seems I should download from Subversion, even though Git is used
>>>>>>> for pd vanilla core and pd-extended core. It seems these Git repos
>>>>>>> are
>>>>>>> regularly pushed onto Subversion. Is that true?
>>>>>>>
>>>>>>> Now, should I really download from these?
>>>>>>>
>>>>>>> https://pure-data.svn.sourceforge.net/svnroot/pure-data/trunk
>>>>>>>
>>>>>>> and
>>>>>>>
>>>>>>> https://pd-gem.svn.sourceforge.net/svnroot/pd-gem/trunk
>>>>>>>
>>>>>>> Next, I'd like some up-to-date build instructions based on the
>>>>>>> development code base. Again, I am more than willing to update the
>>>>>>> online doc with the info you provide.
>>>>>>>
>>>>>>> I appreciate your guidance on how to contribute. I lead a team with
>>>>>>> computer vision programmers and music composition experts that will
>>>>>>> be
>>>>>>> heavily developing Pd in the next coming weeks and months.
>>>>>>>
>>>>>>> Best regards,
>>>>>>> Ricardo
>>>>>>> --
>>>>>>> Linux registered user #175401
>>>>>>> www.lems.brown.edu/~rfabbri
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Pd-dev mailing list
>>>>>>> Pd-dev at iem.at
>>>>>>> http://lists.puredata.info/listinfo/pd-dev
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> ----------------------------------------------------------------------------
>>>>>>
>>>>>> 'You people have such restrictive dress for women,’ she said, hobbling
>>>>>> away
>>>>>> in three inch heels and panty hose to finish out another pink-collar
>>>>>> temp
>>>>>> pool day.  - “Hijab Scene #2", by Mohja Kahf
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ----------------------------------------------------------------------------
>>>>
>>>> As we enjoy great advantages from inventions of others, we should be
>>>> glad of
>>>> an opportunity to serve others by any invention of ours; and this we
>>>> should
>>>> do freely and generously.         - Benjamin Franklin
>>>>
>>>>
>>>>
>>>
>
>
>
> ----------------------------------------------------------------------------
>
> Mistrust authority - promote decentralization.  - the hacker ethic
>
>
>



More information about the Pd-dev mailing list