[PD-dev] Building Pd-extended OSX

Hans-Christoph Steiner hans at eds.org
Sun Mar 19 01:00:13 CET 2006


On Mar 14, 2006, at 10:18 AM, David Plans Casal wrote:

>
> On 13 Mar 2006, at 19:31, Hans-Christoph Steiner wrote:
>
>> The Pd-extended stuff usually relies on patches to the Pd core.   
>> These patches are then submitted to Miller, which he mostly has  
>> been accepting.  The patches which you need to apply vary based on  
>> which version you are trying to compile.
>>
>> Right now, if you go to "packages/"  and run "make patch_pd", it  
>> will apply the patches needed for 0.39.2.  If you are using the  
>> latest version in CVS, then a lot of these patches are already  
>> included, and then you'll have to include a couple patches by hand.
>
> cvs update -d -P is my friend ;-)
>
> could you point at the patches I should have to apply by hand?

That varies as Miller accepts them.  But right now, I think it would  
be these:

alsa_adddev_proto_with_alsa_only-0.40-pre.patch
bang_method_for_clip-0.40.pre.patch
complete_version_defines-0.39.2.patch
libdir-0.38-4.patch
put_version_into_aboutpd_page-0.40-pre.patch
remove_dotdot_from_guidir-0.39.2.patch
special_character_support.patch
windows_env_vars-0.40-pre.patch

>> For example, import.c relies on packages/patches/ 
>> libdir-0.38-4.patch, which should apply cleanly to both 0.39.2 and  
>> the latest in CVS.
>
> ok oh I see. Well I just removed import.c, as you point out below.

>> Also, as a rule of thumb when trying to build the whole Pd- 
>> extended package, just remove the offending file and it will then  
>> continue building from there.  So in this case, if you "rm  
>> externals/loaders/import.c", it will continue building
>> Also, I find it easier to build "externals" first to find these  
>> problems, then when you can get a clean build from "externals",  
>> then try  packages/darwin_app.  So just "cd externals && make"   
>> then when that works, "cd ../packages/darwin_app && make install".
>
> thanks, that's very helpful actually!
>
> but, could you point out what you do about 'broken' externals  
> compilation, such as this (which happens on latest checkout):
>
> /usr/bin/ld: warning -L: directory name (/Users/dc/dev/pure-data/ 
> externals/../externals/hcs/hid/HID Utilities Source/build) does not  
> exist
> /usr/bin/ld: can't locate file for: -lHIDUtilities
> collect2: ld returned 1 exit status
> make: *** [/Users/dc/dev/pure-data/externals/../externals/hcs/hid/ 
> hid.pd_darwin] Error 1
>
> When it tries to compile hid?
>
> I can see it's makefile tests for existing of the build directory  
> and libHIDUtilities.a in there here:
>
> hid_utilities:
> 	test -f ./HID\ Utilities\ Source/build/libHIDUtilities.a || \
> 		( cd  ./HID\ Utilities\ Source && pbxbuild )


On Mac OS X, [hid] requires libHIDUtilities.a, so it needs to be  
compiled with "make hid_utilities" or "cd  ./HID\ Utilities\ Source  
&& pbxbuild"  if its not working...

The [hid] build stuff is annoyingly complicated because of the  
dependencies and needs work.

>
> I mean so far, I've had to remove markex, speex (wanted lame, I  
> didn't want to bother), and now I should have to remove hid, but it  
> seems like a pity, because I'm going to need hid soon, so I'll just  
> end up there again.
>
> Do you usually remove whatever won' t compile?

The best option is to try to fix it, but that means digging into it.   
Trying to compile against the latest CVS version will be a lot more  
digging.  Right now, Pd-extended is targetted at 0.39.2, so that will  
be much easier.

.hc

________________________________________________________________________ 
____

            "The arc of history bends towards justice."
                                            - Dr. Martin Luther King,  
Jr.





More information about the Pd-dev mailing list