Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com> List-Archive: <http://sources.redhat.com/ml/cygwin/> List-Post: <mailto:cygwin AT cygwin DOT com> List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/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 From: "Ralf Habacker" <Ralf DOT Habacker AT freenet DOT de> To: "Charles Wilson" <cwilson AT ece DOT gatech DOT edu> Cc: <cygwin AT cygwin DOT com> Subject: RE: [Patch] skipping import libraries for performance reasons - direct auto-import of dll's Date: Sat, 30 Nov 2002 22:39:09 +0100 Message-ID: <003b01c298b8$ea980170$0a1c440a@BRAMSCHE> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 In-Reply-To: <3DE6B30B.1090205@ece.gatech.edu> Importance: Normal > > The only thing I like to say is, that instead of using a symbolic > link to the > > dll, the "unix" way may be possible. > > What I mean is to put the dll into the lib dir (like the .so > libraries in unix, > > the bin dir contains only executables) and to implement a LD_LIBRARY_PATH > > environmen support into cygwin1.dll, so that the dll could be used > directly. But > > this is only an idea and there may be objectivies not to do so. > > No, not really. The windows runtime loader handles loading the DLL, and > IT doesn't understand "LD_LIBRARY_PATH" and never will (closed source, > MS, yadda yadda). So it doesn't really matter whether cygwin1.dll > understands LD_LIBRARY_PATH or not -- cygwin1.dll is not involved in > loading DLLs (except for dlopen(), but that's a different subject). > > Two choices: > 1) put /usr/lib, /usr/local/lib, etc etc into $PATH > 2) or do the symlink thing > > Personally, I don't want to clutter the PATH with a bunch of lib > directories -- and neither do you, Ralf. You're always worried about > speed on cygwin, and proposing things like auto-rebasing and prelinking > and all sorts of disruptive things. > > But according to MSDN, the one thing that slows program startup the MOST > is searching for DLLs in a long PATH. So, keep PATH short -- which > means the DLLs need to live in the 'bin' directories which are already > in the PATH. That means > > we either put -L/usr/bin and suchlike into the gcc specs file (BLECH!) > or do the symlink thing. Me, I vote for symlinks. :-) > Chuck, thanks for answering. Yes you're right. symlinking seems to me as the best way. BTW: I'm astonished about your detailed and accurate writing. I wished, I could write a litter faster: -) Ralf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/