Re: [info-performer] performer 3.1.1; loader DSO not found

Date view Thread view Subject view Author view

From: Bram Stolk (bram++at++sara.nl)
Date: 07/02/2004 23:05:08


On Fri, 2 Jul 2004 15:31:46 -0500
Benjamin Chang <bchang++at++artic.edu> wrote:

> i've written a loader that worked well in performer 3.0. just upgraded to
> 3.1.1, recompiled, and get this common error:
>
> pfdFindConverterDSO() - Could not load DSO for extension "b3d"
> pfdLoadFile() - Unable to load file flyingarrow.b3d because of problem finding
> pfdLoadFile_b3d

Something similar happened to me, but that was because I loaded libpf and
friends runtime, using dlopen. (normally libpf is loaded load-time, and
libpfiv is loaded runtime). If both are loaded via dlopen, you need to
specify the RTLD_GLOBAL flag when loading the libpf stuff. See man dlopen:

       External references in the library are resolved using the libraries in
       that library's dependency list and any other libraries previously
       opened with the RTLD_GLOBAL flag. If the executable was linked with
       the flag "-rdynamic" (or, synonymously, "--export-dynamic"), then the
       global symbols in the executable will also be used to resolve refer-
       ences in a dynamically loaded library.

But of course, like Tom said, you first need to check with a higher
PFNFYLEVEL, if there are unresolved symbols from libpf, your problem
may be the one I described here.

   Bram

>
> i haven't changed anything in the source, just recompiled it, and linked
> /usr/lib/libpfdb/libpfb3d.so to libpfb3d.so.4.
>
> i'm using redhat 9, gcc-3.2.2-5.
>
> if you know any obvious things i should check, or any changes to the loader
> mechanism from 3.0 to 3.1.1, let me know ...
>
> thanks in advance,
>
> --
> Ben Chang
> Assistant Professor, Art and Technology Studies
> School of the Art Institute of Chicago
> 112 S. Michigan, Chicago IL 60603
> 312.345.3561
> bchang++at++artic.edu
>
> -----------------------------------------------------------------------
> List Archives, Info, FAQ: http://www.sgi.com/software/performer/
> Open Development Project: http://oss.sgi.com/projects/performer/
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com
> -----------------------------------------------------------------------
>

-- 
"For the costs of subsidized agriculture in the EU, we can have all 56 million
 European cows fly around the world. First Class." - J. Norberg


Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Fri Jul 02 2004 - 23:07:41 PDT