> ===== Original Message From Karl-Jose Filler < josefiller at lucent.com > ===== > Hi > > I'm trying to get crossfire running on an old HP box, the old one 0.9x ran fine > but it's gone ... > > No I try to get 1.1 running (first compiling) but > > include/plugin.h > > contains > > #include <dlfcn.h> > > and this file I cannot find on my HP. > > Am I the first one to put this on HP-UX, or are there any hints how to do it ? > > Thanks for your help > > Jose > > Environment: > CPU B132 > OS: HP-UX 10.20 > C-Compiler: gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release) Sorry for not having answered faster to your question, but documentation about HPUX wasn't easy to find for me :) It appears that HPUX uses a different shared library mechanism than most unix systems do. The common way is dlopen/dlclose while HPUX uses shl_load/shl_unload. I do not have an HPUX system to test the following function wrappers. Tell me if those work well on your system: Add the following functions in plugins.c; Also replace #include <dlfcn.h> by #include <dl.h>; Don't forget to update the function prototypes list (sproto.h) ! void *dlopen( const char *path, int mode ) { void *ret; ret = shl_load( path, BIND_IMMEDIATE | BIND_FIRST | BIND_VERBOSE, 0); return ret; } int dlclose( void *handle ) { return shl_unload( (shl_t) handle ); } void *dlsym( void *handle, const char *sym ) { void *value=0; if ( shl_findsym( (shl_t*)&handle, sym, TYPE_PROCEDURE, &value ) != 0 ) return 0; return value; } char *dlerror( void ) { return strerror( errno ); } ------------------------------------------------ Visit http://www.selentine.dyndns.org for a journey into a fantastic world ! (But don't expect too much...) ------------------------------------------------