From: Bram Stolk (bram++at++sara.nl)
Date: 11/13/2000 07:46:43
Hello,
This is about OpenGL|Performer on Irix, linux users can ignore this:
libpfdu.so depends on libimage.a as it uses libimage's iopen().
Normally, this is not much of a problem: performer apps
link with -limage
However, libimage is a static library, and libpf is a shared object.
Now, if you develop your performer app as a shared object, to be
loaded by a foreign binary (let's say e.g. the python interpreter :-),
then things get screwed up.
Because libpf has no shared reference to libimage, the application can
not pull in libimage code.
Linking the custom shared Performer code with -limage does not help:
symbols from libimage.a are not used, thus not linked in.
I've been able to fix this situation by converting libimage.a to
a libimage.so, which gives me a working setup, as the python-module
then refers to libimage.so, but this requires the .so version of
libimage to be available on both the build system and the runtime
system: this is bad, as this prohibits the proper working of my
program on foreign machines.
My questions:
-1- is there a smarter solution to this?
-2- would there be any plans withing sgi, to augment Irix with
a libimage.so in the future?
What are sgi's criteria for releasing a lib as
static-only,shared-only, or in both forms?
thx,
Bram
-- ------------------------------------------------------------------------------ Bram Stolk, VR Specialist. SARA Academic Computing Services Amsterdam, PO Box 94613, 1090 GP AMSTERDAM email: bram++at++sara.nl Phone +31-20-5923059 Fax +31-20-6683167"I heard if you play the NT-4.0-CD backwards, you get a satanic message." "Thats nothing, if you play it forward, it installs NT-4.0" ------------------------------------------------------------------------------
This archive was generated by hypermail 2b29 : Mon Nov 13 2000 - 07:47:12 PST