Hi. I acquired a p5 glove, and the Pd interface I found for it relies on
OSCx. I've been trying to build it, having added -fPIC to it, but I get
this:
make[1]: Entering directory /home/chuckk/Glove/pd/externals/OSCx/src' cc -Wl,-export_dynamic -shared -o sendOSC.pd_linux sendOSC.o htmsocket.o OSC-system-dependent.o -L../../../pd/bin -lpd -lc -lm ../libOSC/libOSC.a /usr/bin/ld: cannot find -lpd collect2: ld returned 1 exit status make[1]: *** [sendOSC.pd_linux] Error 1 make[1]: Leaving directory
/home/chuckk/Glove/pd/externals/OSCx/src'
make: *** [all] Error 2
I added several paths to the INCLUDES line in src/Makefile, as the guy suggested, with the path to a Pd src folder, but still it can't find this -lpd. I read man ld and tried searching for any kind of *libpd*, *pd.a*, or *pd.so* on my entire hard drive, and none of them exist. Should I replace this -lpd with something else? I tried removing it, and it built a faulty set of OSCx objects that don't work.
Thanks. -Chuckk
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Sat, Sep 08, 2007 at 06:48:52PM -0400, Chuckk Hubbard wrote:
Hi. I acquired a p5 glove, and the Pd interface I found for it relies on OSCx. I've been trying to build it, having added -fPIC to it, but I get this: make[1]: Entering directory
/home/chuckk/Glove/pd/externals/OSCx/src' cc -Wl,-export_dynamic -shared -o sendOSC.pd_linux sendOSC.o htmsocket.o OSC-system-dependent.o -L../../../pd/bin -lpd -lc -lm ../libOSC/libOSC.a /usr/bin/ld: cannot find -lpd collect2: ld returned 1 exit status make[1]: *** [sendOSC.pd_linux] Error 1 make[1]: Leaving directory
/home/chuckk/Glove/pd/externals/OSCx/src' make: *** [all] Error 2I added several paths to the INCLUDES line in src/Makefile, as the guy suggested, with the path to a Pd src folder, but still it can't find this -lpd. I read man ld and tried searching for any kind of *libpd*, *pd.a*, or *pd.so* on my entire hard drive, and none of them exist. Should I replace this -lpd with something else? I tried removing it, and it built a faulty set of OSCx objects that don't work.
The linker uses -L not -I to determine its paths.
Try -L/usr/wherever/pd/libs/are/located ?
On 9/8/07, Ken Restivo ken@restivo.org wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Sat, Sep 08, 2007 at 06:48:52PM -0400, Chuckk Hubbard wrote:
Hi. I acquired a p5 glove, and the Pd interface I found for it relies
on
OSCx. I've been trying to build it, having added -fPIC to it, but I get this: make[1]: Entering directory
/home/chuckk/Glove/pd/externals/OSCx/src' cc -Wl,-export_dynamic -shared -o sendOSC.pd_linux sendOSC.o htmsocket.o OSC-system-dependent.o -L../../../pd/bin -lpd -lc -lm ../libOSC/libOSC.a /usr/bin/ld: cannot find -lpd collect2: ld returned 1 exit status make[1]: *** [sendOSC.pd_linux] Error 1 make[1]: Leaving directory
/home/chuckk/Glove/pd/externals/OSCx/src' make: *** [all] Error 2I added several paths to the INCLUDES line in src/Makefile, as the guy suggested, with the path to a Pd src folder, but still it can't find
this
-lpd. I read man ld and tried searching for any kind of *libpd*, *pd.a*,
or
*pd.so* on my entire hard drive, and none of them exist. Should I
replace
this -lpd with something else? I tried removing it, and it built a
faulty
set of OSCx objects that don't work.
The linker uses -L not -I to determine its paths.
Try -L/usr/wherever/pd/libs/are/located ?
Hi Ken, thanks for the suggestion. It doesn't seem to make a difference. There are a series of -L flags and a series of -I flags, so I'm guessing whoever wrote it knew the difference. But I tried both. I also tried removing the -lpd flag, since, again, there is no file on my system that would satisfy it, and it built dumpOSC.pd_linux, sendOSC.pd_linux, and OSCroute.pd_linux, but Pd cannot create a dumpOSC object, while it does create the other two...
-Chuckk
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFG40Iwe8HF+6xeOIcRAod2AKDtPy6HN+RA7YwsdbkK/AMyEjGErgCgtRyu pEPOATDtCGx6A31QzKXIGPY= =kE7A -----END PGP SIGNATURE-----
Chuckk Hubbard wrote:
On 9/8/07, *Ken Restivo* <ken@restivo.org mailto:ken@restivo.org> wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Sat, Sep 08, 2007 at 06:48:52PM -0400, Chuckk Hubbard wrote: > Hi. I acquired a p5 glove, and the Pd interface I found for it relies on > OSCx. I've been trying to build it, having added -fPIC to it, but I get > this: > make[1]: Entering directory `/home/chuckk/Glove/pd/externals/OSCx/src' > cc -Wl,-export_dynamic -shared -o sendOSC.pd_linux sendOSC.o htmsocket.o > OSC-system-dependent.o -L../../../pd/bin -lpd -lc -lm ../libOSC/libOSC.a > /usr/bin/ld: cannot find -lpd > collect2: ld returned 1 exit status > make[1]: *** [sendOSC.pd_linux] Error 1 > make[1]: Leaving directory `/home/chuckk/Glove/pd/externals/OSCx/src' > make: *** [all] Error 2 > > > I added several paths to the INCLUDES line in src/Makefile, as the guy > suggested, with the path to a Pd src folder, but still it can't find this > -lpd. I read man ld and tried searching for any kind of *libpd*, * pd.a*, or > *pd.so* on my entire hard drive, and none of them exist. Should I replace > this -lpd with something else? I tried removing it, and it built a faulty > set of OSCx objects that don't work. > The linker uses -L not -I to determine its paths. Try -L/usr/wherever/pd/libs/are/located ?
Hi Ken, thanks for the suggestion. It doesn't seem to make a difference. There are a series of -L flags and a series of -I flags, so I'm guessing whoever wrote it knew the difference. But I tried both. I also tried removing the -lpd flag, since, again, there is no file on my system that would satisfy it, and it built dumpOSC.pd_linux, sendOSC.pd_linux, and OSCroute.pd_linux, but Pd cannot create a dumpOSC object, while it does create the other two...
So it _can_ build sendOSC.pd_linux when you remove the -lpd flag? That makes sense because there is no need for the pd library if you're building a dynamic shared library. The dumpOSC problem may relate to it's use of type-punning that assumes 32 bit floats and ints. I changed unpackOSC to use an int/float union instead. See http://sourceforge.net/tracker/index.php?func=detail&aid=1788587&gro...
Martin
On 9/9/07, Martin Peach martin.peach@sympatico.ca wrote:
Chuckk Hubbard wrote:
On 9/8/07, *Ken Restivo* <ken@restivo.org mailto:ken@restivo.org> wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Sat, Sep 08, 2007 at 06:48:52PM -0400, Chuckk Hubbard wrote: > Hi. I acquired a p5 glove, and the Pd interface I found for it relies on > OSCx. I've been trying to build it, having added -fPIC to it, but I get > this: > make[1]: Entering directory `/home/chuckk/Glove/pd/externals/OSCx/src' > cc -Wl,-export_dynamic -shared -o sendOSC.pd_linux sendOSC.o htmsocket.o > OSC-system-dependent.o -L../../../pd/bin -lpd -lc -lm ../libOSC/libOSC.a > /usr/bin/ld: cannot find -lpd > collect2: ld returned 1 exit status > make[1]: *** [sendOSC.pd_linux] Error 1 > make[1]: Leaving directory `/home/chuckk/Glove/pd/externals/OSCx/src' > make: *** [all] Error 2 > > > I added several paths to the INCLUDES line in src/Makefile, as the guy > suggested, with the path to a Pd src folder, but still it can't find this > -lpd. I read man ld and tried searching for any kind of *libpd*, * pd.a*, or > *pd.so* on my entire hard drive, and none of them exist. Should I replace > this -lpd with something else? I tried removing it, and it built a faulty > set of OSCx objects that don't work. > The linker uses -L not -I to determine its paths. Try -L/usr/wherever/pd/libs/are/located ?
Hi Ken, thanks for the suggestion. It doesn't seem to make a difference. There are a series of -L flags and a series of -I flags, so I'm guessing whoever wrote it knew the difference. But I tried both. I also tried removing the -lpd flag, since, again, there is no file on my system that would satisfy it, and it built dumpOSC.pd_linux, sendOSC.pd_linux, and OSCroute.pd_linux, but Pd cannot create a dumpOSC object, while it does create the other two...
So it _can_ build sendOSC.pd_linux when you remove the -lpd flag? That makes sense because there is no need for the pd library if you're building a dynamic shared library. The dumpOSC problem may relate to it's use of type-punning that assumes 32 bit floats and ints. I changed unpackOSC to use an int/float union instead. See
http://sourceforge.net/tracker/index.php?func=detail&aid=1788587&gro...
Actually, it built okay; I was just trying to add a dumpOSC object with no argument. With an argument it works...
-Chuckk
Something jumps out at me: ../libOSC/libOSC.a this should be -L../libOSC -lOSC (that's a little-L, on the second one there)
I can't remember... what's the name of that command you use to list the libraries that a binary links to? (I'm sure I've used it once before, but not everyday :)
On 9/8/07, Chuckk Hubbard badmuthahubbard@gmail.com wrote:
Hi. I acquired a p5 glove, and the Pd interface I found for it relies on OSCx. I've been trying to build it, having added -fPIC to it, but I get this: make[1]: Entering directory
/home/chuckk/Glove/pd/externals/OSCx/src' cc -Wl,-export_dynamic -shared -o sendOSC.pd_linux sendOSC.o htmsocket.o OSC-system-dependent.o -L../../../pd/bin -lpd -lc -lm ../libOSC/libOSC.a /usr/bin/ld: cannot find -lpd collect2: ld returned 1 exit status make[1]: *** [sendOSC.pd_linux] Error 1 make[1]: Leaving directory
/home/chuckk/Glove/pd/externals/OSCx/src' make: *** [all] Error 2I added several paths to the INCLUDES line in src/Makefile, as the guy suggested, with the path to a Pd src folder, but still it can't find this -lpd. I read man ld and tried searching for any kind of *libpd*, * pd.a*, or *pd.so* on my entire hard drive, and none of them exist. Should I replace this -lpd with something else? I tried removing it, and it built a faulty set of OSCx objects that don't work.
Thanks. -Chuckk
-- http://www.badmuthahubbard.com _______________________________________________ PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list