[libvirt] Fedora MinGW - need for *.def files

Richard W.M. Jones rjones at redhat.com
Mon Nov 16 13:03:14 UTC 2009


On Mon, Nov 16, 2009 at 01:29:35PM +0100, Daniel Veillard wrote:
> On Mon, Nov 16, 2009 at 11:34:51AM +0000, Daniel P. Berrange wrote:
> > On Mon, Nov 16, 2009 at 11:23:15AM +0000, Richard W.M. Jones wrote:
> > > [This is just a FYI ...]
> > > 
> > > Upstream binutils or gcc changed the default way that symbols are
> > > exported for cross-compiled (Fedora MinGW) DLLs.  Previously all
> > > symbols were exported.  Now they are only exported if they are
> > > explicitly listed in a *.def file.
> > > 
> > > There are two ways that libvirt could be changed to do the right
> > > thing here.
> > 
> > > Or create a *.def file.  It looks like:
> > > 
> > >   LIBRARY libvirt.dll
> > >   DESCRIPTION "libvirt foo blah"
> > >   EXPORTS
> > >   <<list of symbol names, one per line>>
> > > 
> > >   http://msdn.microsoft.com/en-us/library/d91k01sh%28VS.80%29.aspx
> > >   http://msdn.microsoft.com/en-us/library/28d6s79h%28VS.80%29.aspx
> > > 
> > > The LIBRARY and DESCRIPTION lines are optional.
> > 
> > This method sounds appealing to me - we could likely auto-generate
> > this file from the master src/libvirt_public.syms file we already
> > have for Linux/Solaris
> 
>   yup, Rich how urgent is that ? maybe we should try to fix this for
> 0.7.3 (I'm also wondering why I didn't see this for libxml2/libxslt)

Erik can probably answer this more accurately, but I think it's
only a concern for Fedora 13.

The problem is that if you don't do anything then you'll end up
silently building DLLs that don't work.  I hit that problem today with
mingw32-libpng :-(

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
New in Fedora 11: Fedora Windows cross-compiler. Compile Windows
programs, test, and build Windows installers. Over 70 libraries supprt'd
http://fedoraproject.org/wiki/MinGW http://www.annexia.org/fedora_mingw




More information about the libvir-list mailing list