[Mono-list] Re: [Gtk-sharp-list] DllImport on *.so files

Dag Wieers dag@wieers.com
Tue, 19 Aug 2003 02:55:49 +0200 (CEST)


On Mon, 18 Aug 2003, Paolo Molaro wrote:

> Currently, the mapping used for Gtk# is something like:
> 
> <dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0.so" />
> 
> This is correct, but requires the gtk+ development package to be
> installed. A better entry is to use:
> 
> <dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0.so.0" />
> 
> This will load the same library through it's versioned soname, just like
> when a normal C program is linked against libgtk+. No need for extra
> libraries, you can just fix the config file on your system or test and
> submit a patch for the config file installed by default by mono.

Nice, and I guess the mapping is used at buildtime ?

So what it takes for a packager is to generate in some way these mappings 
before building and add the required packages (for the .so.? files) to the 
package dependencies.


Still this does not guarantee that the .dll's work with the specific 
libraries installed, if I'm correct.

Eg. gtk-sharp requires gtkhtml3 and Red Hat only ships gtkhtml2 (and 
building gtkhtml3 is a real mess as it requires a newer gtk2 etc etc...)

Some way of verifying if function-calls map with existing libraries would 
be prefered.


PS I didn't also know that there was a 1:1 mapping between a .dll and a 
.so. I also don't seem to have any dllmap entries in my default 
machine.config, is that the right file to look into ?

PS2 Would those patches be accepted that just add the libmajor ?

Thanks for your feedback,
--   dag wieers,  dag@wieers.com,  http://dag.wieers.com/   --
[Any errors in spelling, tact or fact are transmission errors]