delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-apps/2001/08/04/00:17:18

Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm
Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com
List-Subscribe: <mailto:cygwin-apps-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin-apps/>
List-Post: <mailto:cygwin-apps AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-apps-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/lists.html#faqs>
Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com
Message-ID: <20010804041644.99906.qmail@web14508.mail.yahoo.com>
Date: Sat, 4 Aug 2001 14:16:44 +1000 (EST)
From: =?iso-8859-1?q?Danny=20Smith?= <danny_r_smith_2001 AT yahoo DOT co DOT nz>
Subject: Re: auto-import STATUS
To: Charles Wilson <cwilson AT ece DOT gatech DOT edu>,
Robert Collins <robert DOT collins AT itdomain DOT com DOT au>
Cc: Danny Smith <danny_r_smith_2001 AT yahoo DOT co DOT nz>,
Paul Sokolovsky <paul DOT sokolovsky AT technologist DOT com>,
cygwin-apps AT cygwin DOT com
In-Reply-To: <3B6B6D15.1010804@ece.gatech.edu>
MIME-Version: 1.0

> 
> >>I still don't understand the logic completely, but I cannot get
> >>iostreams to initialise properly, using DLL,  with 
> [io]stream::sentry
> >>defined as inner class by client app, regardless of the dllimport
> >>attribute markings.
> >>
> > 


Okay, I sent this to Robert (only) earlier after he yelled at me.
Perhaps it needs to go group:

Yes this is what I know:  --export-all-symbols is used when building
the dll, full stop.
It is a lazy substitue for a def file.  It is used  implicitly if you
don't have a def file or haven't used attributes to mark dllexport
attributes.
The same behaviour as with dlltool.
It works fines, and puts the correct prefixess on DATA symbols.

 
That  is not what was causing the problem, because:
--export-all when building lib and using __attribute__(dllimport) when
building client then linking works.
--export-all when building lib; using --enable-auto-import when linking
works too, but... I have to change other things in the way classes are
defined  

there are other considerations on when and where things get constructed
and destroyed that can cause problems with C++ dlls.  And that is the
caveat.  There is (sometimes) more to building a C++ dll than just
getting the DATA symbols marked correctly.  Ralf has run into some
others.  If you go through some of the VC++ user list archives you will
find more. 
 All I was trying to point out that --enable-auto-import is a
quick-fix, but not always the best fix.

> > My guess is that it's the use of --export-all that is causing you
> > headaches.
> 
> 
> My guess is there may still be a few bugs.  :-)
> 
> --Chuck
> 

The main bugs, as I indicated earlier, are in people's expectation of
what this feature can do.  

Danny

_____________________________________________________________________________
http://messenger.yahoo.com.au - Yahoo! Messenger
- Voice chat, mail alerts, stock quotes and favourite news and lots more!

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019