In case you missed it on cll today:
Kenny Tilton ktilton@nyc.rr.com writes:
I am doing the latter because one porter is having trouble so far loading on Linux the FTGL lib I use for fonts under win32. And
anyway,
it would be nice to have these libraries as clearly delineated components one can use or not without giving up the rest of Cello.
what's his problem? FTGL works here (gentoo GNU/Linux, not sure if i haven't compiled it myself though).
Are you using FTGL from Lisp? Without C glue?
nope. i misunderstood "loading on Linux the FTGL lib". sorry.
What I did on win32 was write a few lines of C glue to get at the C++ FTGL classes, then rebuild the FTGL dll with that code. I believe the porter created a .SO for the C glue, linking that with a virgin FTGL static lib. AllegroCL on Linux then screams about something being unreadable when he tries to load the glue SO. Look for a recent query here from Frank G. He is able to load SOs as a rule, but the ones he builds have an issue, so it is probably some obscure linker incantation or compiler directive that is needed. Ideas welcome.
i'm doing something similar but with cmucl, i wanna use my favorite media library from lisp, but it has ugly API so i'm writing some helper functions to hide ugliness from lisp. i can use the library from C without much thinking, but when loading it into lisp i have to say:
(load-foreign '("artm-wrap.o" "libmedia1.a" "libmedia2.a") :libraries '("-lc" "-L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/" "-lgcc" "-lz"))
i guess the libmedia uses some gcc-specific features on linux which require linking with gcc... i'm not sure how this would have looked in allegrocl, but the issue might be the same, no?
-- gr{oe|ee}t{en|ings} artm
I read it c.l.l. - but what he does is just not the case here. C shlib loading is not a problem.
Anyway, thx for following up on this. I did not get any answer back from Franz so far.
I keep trying the monkey style ;-)
Cheers, Frank
On Tue, 2004-02-24 at 17:40, Kenny Tilton wrote:
In case you missed it on cll today:
Frank Goenninger wrote:
I read it c.l.l. - but what he does is just not the case here. C shlib loading is not a problem.
Anyway, thx for following up on this. I did not get any answer back from Franz so far.
Did you see this bit of doc?:
"On Linux (either on machines with Intel processors or machines with PowerPC processors), you must produce .so files which are loadable into Allegro CL. Compile with the -fPIC flag. As an example:
% cc -c -fPIC foo.c -o foo.o % ld -shared -o foo.so foo.o"
eep!
kt
Hi Kenny:
Well, hey - of course ;-)))
So, yes, the shared lib and the object files are all made with the -fPIC flag but still no luck. But, yes, you are right - I could try to also build FTGL itself with -fPIC.
Thx anyway.
Frank
On Tue, 2004-02-24 at 21:21, Kenny Tilton wrote:
Frank Goenninger wrote:
I read it c.l.l. - but what he does is just not the case here. C shlib loading is not a problem.
Anyway, thx for following up on this. I did not get any answer back from Franz so far.
Did you see this bit of doc?:
"On Linux (either on machines with Intel processors or machines with PowerPC processors), you must produce .so files which are loadable into Allegro CL. Compile with the -fPIC flag. As an example:
% cc -c -fPIC foo.c -o foo.o % ld -shared -o foo.so foo.o"
eep!
kt
Tried and failed (see below).
See additional mail about observations when trying to fix this.
NOTE: Said mail was going to FRANZ's support team. So please (!) don't "reply to all" to that mail. Thanks.
Regards, Frank
On Tue, 2004-02-24 at 21:36, Frank Goenninger wrote:
Hi Kenny:
Well, hey - of course ;-)))
So, yes, the shared lib and the object files are all made with the -fPIC flag but still no luck. But, yes, you are right - I could try to also build FTGL itself with -fPIC.
Thx anyway.
Frank
On Tue, 2004-02-24 at 21:21, Kenny Tilton wrote:
Frank Goenninger wrote:
I read it c.l.l. - but what he does is just not the case here. C shlib loading is not a problem.
Anyway, thx for following up on this. I did not get any answer back from Franz so far.
Did you see this bit of doc?:
"On Linux (either on machines with Intel processors or machines with PowerPC processors), you must produce .so files which are loadable into Allegro CL. Compile with the -fPIC flag. As an example:
% cc -c -fPIC foo.c -o foo.o % ld -shared -o foo.so foo.o"
eep!
kt
cells-devel site list cells-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/cells-devel