delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/12/18/16:57:57

X-Spam-Check-By: sourceware.org
Message-Id: <1134943065.31637.250073396@webmail.messagingengine.com>
From: "Brett Serkez" <techie AT serkez DOT net>
To: cygwin AT cygwin DOT com
MIME-Version: 1.0
References: <1134745054 DOT 23829 DOT 249957065 AT webmail DOT messagingengine DOT com> <1134754446 DOT 11783 DOT 249970524 AT webmail DOT messagingengine DOT com> <43A30087 DOT 10003 AT cygwin DOT com> <1134757382 DOT 17245 DOT 249972999 AT webmail DOT messagingengine DOT com> <Pine DOT GSO DOT 4 DOT 63 DOT 0512161345480 DOT 4464 AT slinky DOT cs DOT nyu DOT edu>
Subject: Re: Perl/TK Segmentation Violation
In-Reply-To: <Pine.GSO.4.63.0512161345480.4464@slinky.cs.nyu.edu>
Date: Sun, 18 Dec 2005 16:57:45 -0500
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
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
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id jBILvrJx022314

While this technique is useful, it is not producing results for me.

I can see that simply installing all libraries resolves the dependency.

Perhaps the package maintainer could try building the package on a
system with just the default libraries installed?  This should produce a
clear error from the linker as to precisely which library is in question
vs. the run-time that simply gives up.

Brett

On Fri, 16 Dec 2005 13:55:52 -0500 (EST), "Igor Pechtchanski"
<pechtcha AT cs DOT nyu DOT edu> said:
> On Fri, 16 Dec 2005, Brett Serkez wrote:
> 
> > > > >perhaps there is a missing library dependency?
> > > >
> > > > As another test I did a full install of Libs and X11, afterwards my test
> > > > program now runs.  I believe this confirms the issue is a missing
> > > > dependency in the package management system.  What tools are available
> > > > to track down which package contains the missing libraries?
> > >
> > > Try the package search page - <http://cygwin.com/packages/>
> >
> > Sorry I wasn't clear, actually meant how do I figure out which libraries
> > are missing?  That will then allow me to use the package search to
> > figure out which package dependency is missing.
> >
> > Here is the list of Cygwin DLLs in use by Perl when it is running my
> > Perl/TK sample program.  I could use some help determining which DLLs
> > are in which package and thus missing libraries.  I removed what were
> > clearly Windows DLLs, I'm not 100% sure every DLL on this list is a
> > Cygwin DLL:
> >
> > ctype.nls
> > Cwd.dll
> > cygcrypt-0.dll
> > cygexpat-0.dll
> > cygfontconfig-1.dll
> > cygfreetype-6.dll
> > cygperl5_8.dll
> > cygwin1.dll     Cygwin® POSIX Emulation DLL     Red Hat
> > 1005.18.0000.0000
> > cygX11-6.dll
> > cygXft-2.dll
> > cygXrender-1.dll
> > cygz.dll
> > Encode.dll
> > Event.dll
> > locale.nls
> > sortkey.nls
> > sorttbls.nls
> > Tk.dll
> > unicode.nls
> 
> The short but cryptic answer (as a techie, you might appreciate this):
> 
> echo $THE_ABOVE_LIST | awk '{print $1}' | xargs which 2>/dev/null | \
>   xargs cygcheck | sed 's/^\s\+//' | sort -u | cygpath -f - | \
>   xargs cygcheck -f
> 
> (provided you have all the packages installed).
> 
> The long answer: you can use the "cygcheck" tool to find out which DLLs
> an
> executable (or DLL) depends on, like this:
> 
> $ cygcheck `which cygperl5_8.dll`
> C:/cygwin/bin/cygperl5_8.dll
>   C:/cygwin/bin\cygcrypt-0.dll
>     C:/cygwin/bin\cygwin1.dll
>       C:\WINDOWS\System32\ADVAPI32.DLL
>         C:\WINDOWS\System32\ntdll.dll
>         C:\WINDOWS\System32\KERNEL32.dll
>         C:\WINDOWS\System32\RPCRT4.dll
> 
> (since DLLs have to be in the PATH unless loaded via dlopen(), you can
> use
> "which" to find out where the DLL lives).
> 
> You can also use this versatile tool to find out which (installed)
> package
> a file belongs to, like this:
> 
> $ cygcheck -f `which cygperl5_8.dll`
> perl-5.8.7-4
> 
> The rest is glue.
> HTH,
> 	Igor
> -- 
> 				http://cs.nyu.edu/~pechtcha/
>       |\      _,,,---,,_              pechtcha AT cs DOT nyu DOT edu
> ZZZzz /,`.-'`'    -.  ;-;;,_            igor AT watson DOT ibm DOT com
>      |,4-  ) )-,_. ,\ (  `'-'                Igor Pechtchanski, Ph.D.
>     '---''(_/--'  `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!
> 
> If there's any real truth it's that the entire multidimensional infinity
> of the Universe is almost certainly being run by a bunch of maniacs. /DA
----------------------------------------------------------------
Brett C. Serkez, Techie


--
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