On 01/03/2013 03:10 PM, Antoine Villeret wrote:
> Hi Hans and all,
> 
> happy new year and thanks for your work
> 
> sorry for the delayed answer, I was far away from Internet in the
> mountain for few days...

Definitely don't apologize for that, I wish I had been in the mountains :)

> I can log through SSH on pdlab computers (not tested all for now) but I
> have few more questions :
> 
> 1- What can I do and (more important) what should I never do on those
> machines (particularly about SVN checkout and installing / updating lib)

The pddev is pretty locked down, so I think you'd have to try to mess things
up bad.  The biggest worry would be filling up the disks on some of the VMs,
since they are only 9 gigs.  I think the Macs all have lots of disk.

> 2- There is no "pix_opencv" folder in the pddev home (on
> macosx105-i386.pdlab.puredata.info) where could I find the up-to-date
> folder ? should I cd to
> /Users/pddev/pure-data/trunk/externals/pix_opencv (this seems to be very
> old) ?
> Where should I work ?

Work wherever you'd like.  I generally put svn checkouts in ~/code, use that,
or ~/pure-data,  or create your own folder if you want.  I think the biggest
rule would be don't mess with or delete files there that you didn't create.


> sorry for those silly questions, but i don't want to break something...

Thanks for asking!


> 
> a.
> 
> PS : this message should be signed with OpenPGP :-)

Yup, its verified. :)

hc


> 
> Le 31/12/2012 18:28, Hans-Christoph Steiner a écrit :
>>
>> Hey Antoine,
>>
>> So I installed OpenCV 2.3.1 on the PdLab Macs using Fink, and fixed the 
>> Makefile to use pkg-config on all platforms.  I don't know the protocol on 
>> editing the README, so I didn't touch it.  It would make things easier for 
>> users if there was only one build system and the README only covered that.  
>> I'll leave that to you.  Here's how to make a build on Mac OS X: 
>>
>> $ . /sw/bin/init.sh      (load Fink for other libs like opencv)
>> $ cd pix_opencv
>> $ make 
>> PD_PATH=/Users/pd/auto-build/pd-extended/packages/darwin_app/build/Pd-0.43.4-extended-20121231.app/Contents/Resources/
>> $ ./embed-MacOSX-dependencies.sh .
>>
>> ./embed-MacOSX-dependencies.sh finds all the dynamic libraries needed and 
>> embeds them in the folder.  Then you can tarbz the whole pix_opencv folder, 
>> and that's the installable library.  Just drop that into ~/Library/Pd or 
>> /Library/Pd.
>>
>> For the PdLab Macs, building on macosx105-i386.pdlab.puredata.info will 
>> include the 32-bit libraries, which is what you need for current versions of 
>> Pd-extended for Mac OS X.  Gem included in Pd-extended doesn't work for 
>> 64-bit (Gem master does at this point, I think).  Building on 
>> macosx106-x86_64 (chaos.medien.uni-weimar.de) will make 64-bit builds.
>>
>> For someone to build this on their own machine, they'll need to do:
>>
>> fink install opencv-dev
>>
>> On a related note, if you stick with the Library Template Makefile and 
>> layout, that it'll be trivially easy to make Debian packages for it.  I can 
>> do that too, or leave it to you.
>>
>> .hc
>>
>>
>> On Dec 27, 2012, at 3:36 PM, Hans-Christoph Steiner wrote:
>>
>>>
>>> Hey Antoine,
>>>
>>> If you are willing to maintain Mac OS X and/or Windows ports, you can get 
>>> access to the PdLab build machines, and I'm willing to install opencv 2.4.x 
>>> on those machines.  Basically, once everything is setup, you'll just need 
>>> to make the builds on the various platforms by doing 'make'.
>>>
>>> .hc
>>>
>>> On Dec 27, 2012, at 10:35 AM, Antoine Villeret wrote:
>>>
>>>> no idea, there wasn't any official opencv framework in the past, only
>>>> some make by people who needs it but never maintained nor updated...
>>>> so I think it still the case...
>>>> people have to wait for someone who wants to make a framework, or to
>>>> build it themselves
>>>> but, are the packages available for Mac OS X through a package manager
>>>> with automatic installation like in Debian ?
>>>> if no, people have to build package by hand if I understood correctly
>>>> so if they can build a pd package it will be very easy for them to
>>>> build OpenCV 2 from lastest release
>>>> which is I think a better idea than using an old and obsolete OpenCV
>>>> Framework...
>>>>
>>>> I don't have a Mac OS X machine under hand for now to test it
>>>> but I think it's not really hard to make a step by step tutorial to
>>>> make pix_opencv working on OS X with a tarball and some dev tool
>>>>
>>>> --
>>>> do it yourself
>>>> http://antoine.villeret.free.fr
>>>>
>>>>
>>>> 2012/12/27 Hans-Christoph Steiner <h...@at.or.at>:
>>>>>
>>>>> Ah ok, makes sense.  What about opencv2 on Mac OS X?  How is that handled?
>>>>>
>>>>> .hc
>>>>>
>>>>> On Dec 27, 2012, at 10:03 AM, Antoine Villeret wrote:
>>>>>
>>>>>> the default make install command from git repo install gem into
>>>>>> /usr/local/include
>>>>>> --
>>>>>> do it yourself
>>>>>> http://antoine.villeret.free.fr
>>>>>>
>>>>>>
>>>>>> 2012/12/27 Hans-Christoph Steiner <h...@at.or.at>:
>>>>>>>
>>>>>>> What installs the headers into /usr/local/include/Gem?  The Gem package 
>>>>>>> in Debian/Ubuntu installs into /usr/include/Gem, so -I/usr/include/Gem 
>>>>>>> needs to be there.  If some standard installer installs into 
>>>>>>> /usr/local/include/Gem, then I'd keep -I /usr/local/include/Gem in 
>>>>>>> CFLAGS_linux, otherwise I'd leave it to people to edit the Makefile to 
>>>>>>> add their custom Gem header install locations.
>>>>>>>
>>>>>>> .hc
>>>>>>>
>>>>>>> On Dec 27, 2012, at 9:30 AM, Antoine Villeret wrote:
>>>>>>>
>>>>>>>> hi,
>>>>>>>>
>>>>>>>> thansk for that,
>>>>>>>>
>>>>>>>> i had to change the CLAGS_linux variable (line 39) to :
>>>>>>>> CFLAGS_linux = -I/usr/local/include/Gem `pkg-config --cflags opencv`
>>>>>>>>
>>>>>>>> to make it
>>>>>>>> but I don't know if I should or not push it to the SVN ?
>>>>>>>>
>>>>>>>> --
>>>>>>>> do it yourself
>>>>>>>> http://antoine.villeret.free.fr
>>>>>>>>
>>>>>>>>
>>>>>>>> 2012/12/27 Hans-Christoph Steiner <h...@at.or.at>:
>>>>>>>>>
>>>>>>>>> Ok, I committed a Makefile based on the Library Template.  It does 
>>>>>>>>> not build pix_opencv_contours.cc pix_opencv_matchshape.cc, they both 
>>>>>>>>> gave a big dump of roughly the same errors.
>>>>>>>>>
>>>>>>>>> The template Makefile will handle a lot of things automatically for 
>>>>>>>>> you, the trade-off is that its strict about certain things: every 
>>>>>>>>> object must have a help patch, all example files must go into 
>>>>>>>>> examples/, etc.  The template Makefile is really easy to make a 
>>>>>>>>> Debian package from too.
>>>>>>>>
>>>>>>>> really easy why not, but how ?
>>>>>>>> if I should make it myself I need a little more help...
>>>>>>>> the links on the page : 
>>>>>>>> http://puredata.info/dev/DebianPackagingStructure
>>>>>>>> are not broken but doesn't point to the right discussion...
>>>>>>>> anyway, I found the discussion and others but can't find anywhere a
>>>>>>>> good step by step howto build debian package
>>>>>>>> sorry, this will be my first debian package :-)
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>> * is pix_opencv_opticalflow.pd an example or an abstraction?  If its 
>>>>>>>>> an example, it should go into examples/ with of.frag. If its an 
>>>>>>>>> abstraction, it should have a help patch.  Or if its just a text 
>>>>>>>>> patch, it can be left out of the Makefile and left as is.
>>>>>>>>
>>>>>>>> I forgot this one...
>>>>>>>> I placed it in the examples/ folder for now
>>>>>>>> but working on optical flow externals is in my todo list (with gpu and 
>>>>>>>> opencl)
>>>>>>>>
>>>>>>>>>
>>>>>>>>> * pix_opencv_blobtrack.cc seems to require opencv2, does that mean 
>>>>>>>>> both opencv 1.2 and opencv 2.x need to be installed?  Is there an 
>>>>>>>>> OpenCV2 framework for Mac OS X?
>>>>>>>>
>>>>>>>> yes, most of recent and future externals take advantages of the new
>>>>>>>> C++ API of OpenCV 2.x
>>>>>>>> OpenCV 2 releases are distribute as a tarball for Linux/OSX, there is
>>>>>>>> no Framework on the download page http://opencv.org/downloads.html
>>>>>>>> and a quick search lead to multiple posts over the internet on how to
>>>>>>>> build it by hand (which very easy since the new cmake system)
>>>>>>>> and also a precompiled package :
>>>>>>>> http://vislab.cs.vt.edu/~vislab/wiki/images/4/44/OpenCV2.0.dmg
>>>>>>>> found here : http://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port
>>>>>>>> but it's obsolete
>>>>>>>>
>>>>>>>> ++
>>>>>>>> a
>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Mac OS X, I was building against Pd-extended 0.43 since pix_opencv 
>>>>>>>>> uses some new Gem headers that aren't included in Pd-extended 0.42.  
>>>>>>>>> The template Makefile automatically looks in Pd-extended if its in 
>>>>>>>>> /Applications.  If you want to choose which version of Pd-extende to 
>>>>>>>>> build against:
>>>>>>>>>
>>>>>>>>> make 
>>>>>>>>> PD_PATH=/Applications/Pd-0.43.4-extended-20121223.app/Contents/Resource
>>>>>>>>>
>>>>>>>>> .hc
>>>>>>>>>
>>>>>>>>> On Dec 26, 2012, at 3:11 PM, Antoine Villeret wrote:
>>>>>>>>>
>>>>>>>>>> hello,
>>>>>>>>>>
>>>>>>>>>> I made an update today on pix_opencv with an improvement of
>>>>>>>>>> pix_opencv_contours which is now a complete replacement of other
>>>>>>>>>> pix_opencv_contours_* objects
>>>>>>>>>>
>>>>>>>>>> and I sent a private mail to Lluis even if I found some old mails on
>>>>>>>>>> this list by him and i never get any answer
>>>>>>>>>> so maybe you can go ahead according to the "one week consensus" ?
>>>>>>>>>>
>>>>>>>>>> there is actually one strange make rule, its for a custom blobtracker
>>>>>>>>>> but I will change this as soon as i have time
>>>>>>>>>>
>>>>>>>>>> merry chrismas to all
>>>>>>>>>>
>>>>>>>>>> cheers
>>>>>>>>>>
>>>>>>>>>> a
>>>>>>>>>> --
>>>>>>>>>> do it yourself
>>>>>>>>>> http://antoine.villeret.free.fr
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> 2012/12/13 Hans-Christoph Steiner <h...@at.or.at>:
>>>>>>>>>>>
>>>>>>>>>>> On Dec 13, 2012, at 12:21 PM, Antoine Villeret wrote:
>>>>>>>>>>>
>>>>>>>>>>>> 2012/12/13 Hans-Christoph Steiner <h...@at.or.at>:
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Dec 13, 2012, at 3:43 AM, IOhannes m zmoelnig wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>>>>>>>>>>>> Hash: SHA1
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 2012-12-12 19:42, Antoine Villeret wrote:
>>>>>>>>>>>>>>> i've already tried to make a C++ external from the template but 
>>>>>>>>>>>>>>> i
>>>>>>>>>>>>>>> never reach something which works so if you have a working 
>>>>>>>>>>>>>>> template
>>>>>>>>>>>>>>> please let me know
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> pix-opencv depends on external libraries, and afaik often needs
>>>>>>>>>>>>>> specific versions thereof.
>>>>>>>>>>>>>> i think it is a perfect candidate to *not* use a template 
>>>>>>>>>>>>>> Makefile but
>>>>>>>>>>>>>> instead use something more intelligent like autotools, scons,
>>>>>>>>>>>>>> cmake,...which reminds me that it already does use autoconf
>>>>>>>>>>>>>
>>>>>>>>>>>>>>> and what about including it in Gem ? as it depends on it (and it
>>>>>>>>>>>>>>> may depends on very new feature such as ROI soon) i think it's a
>>>>>>>>>>>>>>> better choice
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> pix-opencv is developed by different people than Gem. i think it 
>>>>>>>>>>>>>> is
>>>>>>>>>>>>>> good to keep the repositories (and user-management) separate.
>>>>>>>>>>>>>> so: i'd rather not have pix-opencv be "part" of Gem.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> but:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> i agree that pix-opencv could be made more readily available to 
>>>>>>>>>>>>>> users.
>>>>>>>>>>>>>> it might be a good idea to distribute it together with 
>>>>>>>>>>>>>> Gem-releases.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> so:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> the build-system needs little changes to build a pix_opencv 
>>>>>>>>>>>>>> found in
>>>>>>>>>>>>>> extra/ (basically, uncomment the relevant lines at the end of
>>>>>>>>>>>>>> extra/configure.ac and add a line to extra/Makefile.am)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> we could then create a script that pulls in pix-opencv to
>>>>>>>>>>>>>> extra/pix_opencv before the builds are actually started.
>>>>>>>>>>>>>
>>>>>>>>>>>>> autotools are very useful for detecting platform differences and 
>>>>>>>>>>>>> making the build system respond differently based on that, like 
>>>>>>>>>>>>> handling multiple optional dependencies like in Gem.  For the 
>>>>>>>>>>>>> case you describe, that works well with the template Makefile.  
>>>>>>>>>>>>> For an object that requires a specific library, add it to 
>>>>>>>>>>>>> LDFLAGS.  If that library not installed, it'll throw an error, 
>>>>>>>>>>>>> which is what you want since the object requires that library.  
>>>>>>>>>>>>> pix_opencv requires opencv, and does nothing without it, so no 
>>>>>>>>>>>>> autotools necessary.
>>>>>>>>>>>>
>>>>>>>>>>>> I don't know anything about autotool and it looks like quite dark 
>>>>>>>>>>>> for
>>>>>>>>>>>> me so if i can avoid another headache it's better :-)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> As for version differences, I generally find it way too much work 
>>>>>>>>>>>>> to support building against various versions of the API and just 
>>>>>>>>>>>>> choose one and standardize on it.  Then, once this lib is widely 
>>>>>>>>>>>>> distributed it could be worth building against different versions 
>>>>>>>>>>>>> of opencv if there is demand.  First get it out there for the 
>>>>>>>>>>>>> majority of users, then deal with any relevant edge cases, 
>>>>>>>>>>>>> otherwise you are likely to spend lots of time dealing with edge 
>>>>>>>>>>>>> cases that might not really be relevant.
>>>>>>>>>>>>>
>>>>>>>>>>>>> My problem with autotools is that very few people know how to 
>>>>>>>>>>>>> modify it, so the build system then rots because its not 
>>>>>>>>>>>>> maintained and other issues.  I've seen this happen to a lot of 
>>>>>>>>>>>>> autotools build systems in Pd projects over the years.  For 
>>>>>>>>>>>>> example, Gem's autotools setup has gotten so complex, its almost 
>>>>>>>>>>>>> impenetrable for me, and I've done a fair amount of autotools.  
>>>>>>>>>>>>> This is one reason to not include every object in Gem.
>>>>>>>>>>>>>
>>>>>>>>>>>>> The Makefile that's there is already quite close to working. I'm 
>>>>>>>>>>>>> happy to commit fixes to get it working if that's OK with the 
>>>>>>>>>>>>> maintainers.  I've committed to pix_opencv before.  Indeed I did 
>>>>>>>>>>>>> this work back in 2009 but sevy objected so it was reverted and 
>>>>>>>>>>>>> abandoned:
>>>>>>>>>>>>>
>>>>>>>>>>>>> http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/externals/pix_opencv/Makefile?r1=12563&r2=12571
>>>>>>>>>>>>
>>>>>>>>>>>> I think we should ask Lluis for that
>>>>>>>>>>>> with the current Makefile in the SVN man should have opencv >= 2.3
>>>>>>>>>>>> (some externals won't compile with previous OpenCV version) but 
>>>>>>>>>>>> there
>>>>>>>>>>>> is not check about that I think
>>>>>>>>>>>> and I can build with
>>>>>>>>>>>> ./configure --with-pd=<PATH> --with-gem=<PATH>
>>>>>>>>>>>> make
>>>>>>>>>>>
>>>>>>>>>>> The Makefile equivalent of this is:
>>>>>>>>>>>
>>>>>>>>>>> make PD_SRC=<PATH> GEM_SRC=<PATH>
>>>>>>>>>>>
>>>>>>>>>>> Otherwise it'll look in the default installed locations for the 
>>>>>>>>>>> headers.
>>>>>>>>>>>
>>>>>>>>>>>> but only tested on Ubuntu
>>>>>>>>>>>> I don't know if it could build on other linux distro and even less 
>>>>>>>>>>>> on
>>>>>>>>>>>> Mac OS X and Windows
>>>>>>>>>>>> Should fixing that Makefile.in be a starting point to distrute the 
>>>>>>>>>>>> package ?
>>>>>>>>>>>
>>>>>>>>>>> Let me know and i'll do it.  Is Lluis on this list?  Yes, I can 
>>>>>>>>>>> include 'make osx_tarball' so its easy to make the tarball for 
>>>>>>>>>>> releases.
>>>>>>>>>>>
>>>>>>>>>>> .hc
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>
>>>
>>
> 

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
GEM-dev mailing list
GEM-dev@iem.at
http://lists.puredata.info/listinfo/gem-dev

Reply via email to