Hello,
I've spent most of today trying to get OSCx to compile on OSX 10.3.
I've added sys/types in the include in the OSC-client.c file in libOSC to get it to compile. Once I get to this point I can compile the libOSC.a but when I try and compile the OSC externals I get this error:
cc -bundle -undefined suppress -flat_namespace -o OSC.pd_darwin OSC.o htmsocket.o OSC-pattern-match.o sendOSC.o dumpOSC.o routeOSC.o -lm -lc ../libOSC/libOSC.a ld: archive: ../libOSC/libOSC.a has no table of contents, add one with ranlib(1) (can't load from it) make: *** [OSC.pd_darwin] Error 1
so I've tried adding a table of contents with ranlib, as well as adding the s flag to ar so that the table of contents gets created directly from the libOSC makefile:
${AR} srv $@ $*.o
The table of contents does get created since the compile of the OSC externals no longer fails, but when trying to load OSC into PD I get:
dyld: /Users/admin/bbogart/pd/bin/pd Undefined symbols: _dumpOSC_setup pd_gui: pd process exited Trace/BPT trap
As far as I know this should be "dumpOSC_setup" not "_dumpOSC_setup" for PD to load it. I've looked at libtool, ld, ar and cc manpages and I can't figure out exactly how to make this work. I'm not generally familar with static libs so I'm learning from scratch here.
I really want OSCx to work on OSX!!
Does anyone have any suggestions?
Thanks, Ben
hy. seems that sys/types.h needs to be included for osx.
[ben@ekran.org]->[[PD-dev] OSCx for OS X]->[04-01-19 08:25]
|Hello All, | |I'm trying to get OSCx to work on OSX (10.3) but I can't get past compile |errors from libOSC (following message). | |Any help would be appreciated. Does anyone have OSCx working, a pd binary |perhaps? | |Thanks |Ben | |cc -c -O2 -Wall -fPIC -Dunix OSC-client.c |In file included from OSC-client.c:68: |/usr/include/netinet/in.h:255: error: parse error before "in_addr_t" |/usr/include/netinet/in.h:312: error: parse error before "u_char" |/usr/include/netinet/in.h:314: error: parse error before "sin_port" |/usr/include/netinet/in.h:317: error: parse error before '}' token |/usr/include/netinet/in.h:329: error: field `ip_dst' has incomplete type |/usr/include/netinet/in.h:398: error: field `imr_multiaddr' has incomplete |type |/usr/include/netinet/in.h:399: error: field `imr_interface' has incomplete |type |In file included from /usr/include/netinet/in.h:518, | from OSC-client.c:68: |/usr/include/netinet6/in6.h:123: error: parse error before "u_int8_t" |/usr/include/netinet6/in6.h:125: error: parse error before "__u6_addr32" |/usr/include/netinet6/in6.h:126: error: parse error before '}' token |/usr/include/netinet6/in6.h:127: error: parse error before '}' token |/usr/include/netinet6/in6.h:145: error: parse error before "u_int8_t" |/usr/include/netinet6/in6.h:147: error: parse error before "sin6_port" |/usr/include/netinet6/in6.h:148: error: parse error before "sin6_flowinfo" |/usr/include/netinet6/in6.h:150: error: parse error before "sin6_scope_id" |/usr/include/netinet6/in6.h:384: error: field `ro_dst' has incomplete type |/usr/include/netinet6/in6.h:455: error: field `ipv6mr_multiaddr' has |incomplete type |/usr/include/netinet6/in6.h:463: error: field `ipi6_addr' has incomplete type |/usr/include/netinet6/in6.h:615: error: syntax error before "struct" |/usr/include/netinet6/in6.h:617: error: parse error before "__P" |/usr/include/netinet6/in6.h:618: error: parse error before "__P" |/usr/include/netinet6/in6.h:619: error: parse error before "__P" |/usr/include/netinet6/in6.h:621: error: parse error before '*' token |/usr/include/netinet6/in6.h:622: error: parse error before "__P" |/usr/include/netinet6/in6.h:623: error: parse error before "__P" |/usr/include/netinet6/in6.h:625: error: parse error before |"inet6_rthdr_space" |/usr/include/netinet6/in6.h:626: error: parse error before "__P" |/usr/include/netinet6/in6.h:627: error: parse error before "__P" |/usr/include/netinet6/in6.h:629: error: parse error before "__P" |/usr/include/netinet6/in6.h:633: error: parse error before "__P" |/usr/include/netinet6/in6.h:634: error: parse error before "__P" |/usr/include/netinet6/in6.h:635: error: parse error before "__P" |/usr/include/netinet6/in6.h:637: error: parse error before "__P" |/usr/include/netinet6/in6.h:638: error: parse error before "__P" |/usr/include/netinet6/in6.h:640: error: parse error before "__P" |/usr/include/netinet6/in6.h:641: error: parse error before "__P" |/usr/include/netinet6/in6.h:643: error: parse error before "__P" |/usr/include/netinet6/in6.h:645: error: parse error before "__P" |/usr/include/netinet6/in6.h:647: error: parse error before "__P" |/usr/include/netinet6/in6.h:648: error: parse error before "inet6_rth_space" |/usr/include/netinet6/in6.h:649: error: parse error before "__P" |/usr/include/netinet6/in6.h:650: error: parse error before "__P" |/usr/include/netinet6/in6.h:651: error: parse error before "__P" |/usr/include/netinet6/in6.h:652: error: parse error before "__P" |/usr/include/netinet6/in6.h:653: error: parse error before "__P" |In file included from /usr/include/machine/types.h:30, | from /usr/include/sys/types.h:72, | from /usr/include/stdio.h:65, | from OSC-client.c:69: |/usr/include/ppc/types.h:69: error: syntax error before "typedef" |/usr/include/netinet/in.h:315: error: storage size of `sin_addr' isn't known |/usr/include/netinet6/in6.h:149: error: storage size of `sin6_addr' isn't |known |make: *** [libOSC.a(OSC-client.o)] Error 1 | | | | |_______________________________________________ |PD-dev mailing list |PD-dev@iem.at |http://iem.at/cgi-bin/mailman/listinfo/pd-dev |
-- x d u . o r G GPG-key at http://xdv.org/~jdl/jdl.pub.asc