Re: [Monetdb-developers] why open() before dlopen()?
On Fri, Mar 19, 2010 at 11:38 AM, Martin Kersten Martin.Kersten@cwi.nl wrote:
Also portability over all platforms is point of concern, there is some old old out there, e.g. HP-UX.
Ok, then I'll make the patch specific to OpenBSD unless someone here has a preferred solution.
Thanks,
m
On 19-03-2010 11:47:37 -0400, Mark Bucciarelli wrote:
On Fri, Mar 19, 2010 at 11:38 AM, Martin Kersten Martin.Kersten@cwi.nl wrote:
Also portability over all platforms is point of concern, there is some old old out there, e.g. HP-UX.
Ok, then I'll make the patch specific to OpenBSD unless someone here has a preferred solution.
Well, you haven't shown us your patch, but in general dlopen is a very smart function, that does things like adding the right extension for the platform at hand, so in general one should try hard to benefit from it's -- sometimes really just black -- "magic".
On Fri, Mar 19, 2010 at 11:54 AM, Fabian Groffen Fabian.Groffen@cwi.nl wrote:
in general dlopen is a very smart function,
The issue isn't with dlopen().
It's with MSP_locate_file() in mal_linker.c.
MSP_locate_file() throws a runtime error if open() fails, and the call to open() assumes a .so with no version suffix. This logic assumes a certain setting of the libtool variable library_names_spec, which can vary by platform.
In fact, there's already an #ifdef _AIX in that function that ignores the open() error, so this has come up before for another platform.
Thanks,
m
participants (2)
-
Fabian Groffen
-
Mark Bucciarelli