Has anyone gotten OSCx to build completely on Windows using MinGW? The ./configure && make compiles everything, and makes the single objects fine, but it just doesn't link the OSC.dll library. I'd like to find the fixes and put them in CVS, so that the MinGW builds will automatically build OSC too.
This is the stage where the error is:
gcc -shared -o OSC.dll OSC.o sendOSC.o dumpOSC.o OSCroute.o htmsocket.o OSC-pattern-match.o OSC-system-dependent.o -L../../../pd/bin -lpd -lm -lwsock32 ../libOSC/libOSC.a Info: resolving _s_float by linking to __imp__s_float (auto-import) OSC.o: In function `OSC_setup': C:/msys/1.0/home/hans/cvs/pure-data/externals/OSCx/src/OSC.c:61: undefined reference to `_imp__sendOSC_setup' C:/msys/1.0/home/hans/cvs/pure-data/externals/OSCx/src/OSC.c:62: undefined reference to `_imp__dumpOSC_setup' C:/msys/1.0/home/hans/cvs/pure-data/externals/OSCx/src/OSC.c:63: undefined reference to `_imp__OSCroute_setup' collect2: ld returned 1 exit status make[1]: *** [OSC.dll] Error 1 make[1]: Leaving directory `/home/hans/cvs/pure-data/externals/OSCx/src' make: *** [all] Error 2
Its very strange since sendOSC.o, dumpOSC.o, and OSCroute.o are all included.
.hc
________________________________________________________________________ ____
"Looking at things from a more basic level, you can come up with a more direct solution... It may sound small in theory, but it in practice, it can change entire economies."
- Amy Smith
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
Has anyone gotten OSCx to build completely on Windows using MinGW? The ./configure && make compiles everything, and makes the single objects fine, but it just doesn't link the OSC.dll library. I'd like to find the fixes and put them in CVS, so that the MinGW builds will automatically build OSC too.
Hm, I don't understand why you are trying to fix that at all? OSC doesn't need to build as a library. It's just three objects and actually I'm trying to get it down to just two by splitting off OSCroute. Just wondering ...
Ciao
On Dec 27, 2005, at 3:14 AM, Frank Barknecht wrote:
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
Has anyone gotten OSCx to build completely on Windows using MinGW? The ./configure && make compiles everything, and makes the single objects fine, but it just doesn't link the OSC.dll library. I'd like to find the fixes and put them in CVS, so that the MinGW builds will automatically build OSC too.
Hm, I don't understand why you are trying to fix that at all? OSC doesn't need to build as a library. It's just three objects and actually I'm trying to get it down to just two by splitting off OSCroute. Just wondering ...
Well, it makes life much easier if the same build system works on all three platforms. It works fine on GNU/Linux and Darwin, so it seems the shortest path would be getting the linking of the lib working on MinGW. But another option is to remove the OSC lib building altogether on all three platforms.
.hc
________________________________________________________________________ ____
Using ReBirth is like trying to play an 808 with a long stick. -David Zicarelli
On Dec 28, 2005, at 2:00 AM, Frank Barknecht wrote:
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
But another option is to remove the OSC lib building altogether on all three platforms.
Votes++.
So I did this. now it builds the same on all three platforms.
I moved the building of the OSC library to the 'lib' target. I moved the building of the command line utils to the 'utils' target. Neither 'lib' nor 'utils' are built with 'all', but they are built with 'install'. I also copied externals/OSCx/src/htmsocket.c to externals/OSCx/send+dump/htmsocket.c since they seem to be the same file, but the send+dump one was out of date.
.hc
________________________________________________________________________ ____
There is no way to peace, peace is the way. -A.J. Muste
I moved the building of the OSC library to the 'lib' target. I moved the building of the command line utils to the 'utils' target. Neither 'lib' nor 'utils' are built with 'all', but they are built with 'install'.
thats kind of abnormal. since when is 'install' supposed to build anything? at the very least this would cause sandbox violations on gentoo, say if there were a pd-externals ebuild..
I also copied externals/OSCx/src/htmsocket.c to externals/OSCx/send+dump/htmsocket.c since they seem to be the same file, but the send+dump one was out of date.
one should be deleted then...eh
On Jan 16, 2006, at 1:43 PM, cdr wrote:
I moved the building of the OSC library to the 'lib' target. I moved the building of the command line utils to the 'utils' target. Neither 'lib' nor 'utils' are built with 'all', but they are built with 'install'.
thats kind of abnormal. since when is 'install' supposed to build anything? at the very least this would cause sandbox violations on gentoo, say if there were a pd-externals ebuild..
Its abnormal, but its a backwards compatible hack for to support some stuff that is basically AFAIK unused, so I think its tolerable. externals/Makefile doesn't touch "lib" or "utils" at all.
I also copied externals/OSCx/src/htmsocket.c to externals/OSCx/send+dump/htmsocket.c since they seem to be the same file, but the send+dump one was out of date.
one should be deleted then...eh
Feel free to fix it.
.hc ________________________________________________________________________ ____
Man has survived hitherto because he was too ignorant to know how to realize his wishes. Now that he can realize them, he must either change them, or perish. -William Carlos Williams