delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/02/18/22:39:57

X-Spam-Check-By: sourceware.org
Subject: Linux vs Cygwin linkage
From: skaller <skaller AT users DOT sourceforge DOT net>
To: cygwin AT cygwin DOT com
Date: Sun, 19 Feb 2006 05:39:41 +1100
Message-Id: <1140287981.4091.76.camel@rosella.wigram>
Mime-Version: 1.0
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

I have found some unexpected differences between Cygwin
and Linux. FYI I think Cygwin is right, and Linux is wrong.

What happens is I have a DLL P which depends on a DLL F and
a DLL D. A also depends on R. The executable depends on
R D and F.

Under Linux, I link P against F, and it works.
IMHO this is just plain wrong. It seems to be pooling
symbols globally or something.

Under Cygwin this does not happen. The link of P fails
with an undefined symbol from D. I think this is correct.

If anyone can throw some light on this I'd appreciate it.
Is it this option:?

     --allow-shlib-undefined
     --no-allow-shlib-undefined
       Allows (the default) or disallows undefined symbols in  shared
       libraries. 

Can I fix that with

	-Wl,--no-allow-shlib-undefined

switch to gcc, so Linux and Cygwin behave the same?

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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