On Wed, 25 Oct 2006, Fanouris Moraitis wrote:
/System/Library/Frameworks/CoreServices.framework/Frameworks/OSServices.framework/Headers/OpenTransport.h:723: error: expected identifier before numeric constant make: *** [gridflow.pd_darwin] Error 1 and the solution was to Put #undef T_DATA just after #include "base/grid.h.fcs" but in which file and where?
gridflow.pd_darwin is built from bridge/puredata.c
bridge/puredata.c already contains #undef, but there's a // in front of it to disable, because I didn't remember what it was for, and it was preventing GridFlow from working with Ruby 1.8 again. However, I've redefined T_DATA properly, so now it could be #undef'ed again, for the benefit of OSX users.
This is because T_DATA is defined in both Ruby and OSX's OpenTransport with different meanings and purposes; and because the definitions of T_DATA in Ruby 1.8 and Ruby 1.9 differ as well.
*strangely*, when I'm not #undefing T_DATA and still #defining it again, g++ doesn't give me any warning, even though it *is* a duplicate definition that it would normally warn me about! (anyone understands this?)
In OpenTransport.h?(I cannot find #include "base/grid.h.fcs" in OpenTransport.h and it is a system file should I change it?) Should I put it somewere else?
I don't recommend modifying system files unless you really know what you're doing, but if you really know what you're doing then modifying bridge/puredata.c is a lot easier.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju | Freelance Digital Arts Engineer, Montréal QC Canada