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.