X-Spam-Check-By: sourceware.org
Message-Id: <1134943065.31637.250073396@webmail.messagingengine.com>
From: "Brett Serkez" <techie@serkez.net>
To: cygwin@cygwin.com
Content-Disposition: inline
Content-Type: text/plain; charset="ISO-8859-1"
MIME-Version: 1.0
References: <1134745054.23829.249957065@webmail.messagingengine.com>    <1134754446.11783.249970524@webmail.messagingengine.com>    <43A30087.10003@cygwin.com>    <1134757382.17245.249972999@webmail.messagingengine.com>    <Pine.GSO.4.63.0512161345480.4464@slinky.cs.nyu.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@cygwin.com; run by ezmlm
Precedence: bulk
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie.com@cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Content-Transfer-Encoding: 8bit
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@cs.nyu.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@cs.nyu.edu
> ZZZzz /,`.-'`'    -.  ;-;;,_            igor@watson.ibm.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/


