This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Perl/TK Segmentation Violation


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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]