On Fri, 10 Nov 2000, Jean-Claude Schopfer wrote:
>    /usr/ccs/bin/ld: Unsatisfied symbols: DL_UNLOAD (code)

Pour info,

Je n;ai pas regarde le code mais a mon avis il s'agit d'une macro. La gestion
des dynamic shared libraries a change entre HP-UX 10.20 et HP-UX 11.0
La syntaxe et la semantique de 10.20 etait du genre HP specific, donc non
standard, alors que 11.0 correspond au standard (comme sur Solaris). 

Pour memoire le chargement d'une librairie dynamique se faite de la maniere
suivante :

        HP-UX 10.20     :       shl_t shl_load( const char *Path, 
                                                 int flags,
                                                 long address);

        HP-UX 11.0      :       void *dlopen(const char *Path,
                                                int mode);
etc.

Donc il suffit de rechercher la definitiond de la macro DL_UNLOAD et de faire
les changements appropries. Il semble meme que la macro soit masquee,
probablement suite a un #define incorrecte. Si jamais cette macro n'est pas
dans ton code, tu pourais la definir de maniere suivante :

#ifdef __hpux
#ifdef HPUX_10X         /* macro a definir dans les CCOPTS      */
#define DL_UNLOAD(_h_)  shl_unload(_h_)                 /* HP-UX 10.* */
#else
#define DL_UNLOAD(_h_)  dlclose(_h_)                    /* HP-UX 11.* */
#endif
#endif

Daniel Cordey
--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question.

Répondre à