cygcheck man page on Cygwin

Man page or keyword search:  
man Server   22533 pages
apropos Keyword Search (all sections)
Output format
Cygwin logo
[printable version]

CYGCHECK(1)			    CYGWIN			   CYGCHECK(1)

NAME
	-  List system information, check installed packages, or query package
       database.

SYNOPSIS
       cygcheck [-v] [-h] PROGRAM
       cygcheck -c [-d] [PACKAGE]
       cygcheck -s [-r] [-v] [-h]
       cygcheck -k
       cygcheck -f FILE [FILE]...
       cygcheck -l [PACKAGE]...
       cygcheck -p REGEXP
       cygcheck --delete-orphaned-installation-keys
       cygcheck --enable-unique-object-names Cygwin-DLL
       cygcheck --disable-unique-object-names Cygwin-DLL
       cygcheck --show-unique-object-names Cygwin-DLL
       cygcheck -h

OPTIONS
       At least one command option or a PROGRAM is required, as shown above.

       PROGRAM
	      list library (DLL) dependencies of PROGRAM

       -c, --check-setup
	      show installed version of PACKAGE and verify integrity  (or  for
	      all installed packages if none specified)

       -d, --dump-only
	      just list packages, do not verify (with -c)

       -s, --sysinfo
	      produce diagnostic system information (implies -c -d)

       -r, --registry
	      also scan registry for Cygwin settings (with -s)

       -k, --keycheck
	      perform  a keyboard check session (must be run from a plain con‐
	      sole only, not from a pty/rxvt/xterm)

       -f, --find-package
	      find the package to which FILE belongs

       -l, --list-package
	      list contents of PACKAGE (or all packages if none given)

       -p, --package-query
	      search for REGEXP in the entire  cygwin.com  package  repository
	      (requires internet connectivity)

       --delete-orphaned-installation-keys
	      Delete  installation  keys of old, now unused installations from
	      the registry.  Requires the right to change the registry.

       --enable-unique-object-names Cygwin-DLL

       --disable-unique-object-names Cygwin-DLL

       --show-unique-object-names Cygwin-DLL
	      Enable, disable, or show the  setting  of	 the  \"unique	object
	      names\"  setting	in  the	 Cygwin	 DLL given as argument to this
	      option.  The DLL path must be given as  valid  Windows(!)	 path.
	      See  the	users  guide  for more information.  If you don't know
	      what this means, don't change it.

       -v, --verbose
	      produce more verbose output

       -h, --help
	      annotate	output	with  explanatory  comments  when  given  with
	      another command, otherwise print this help

       -V, --version
	      print the version of cygcheck and exit

       Note:  -c,  -f,	and  -l	 only  report  on  packages that are currently
       installed. To

       search all official Cygwin packages use -p instead.
	      The -p REGEXP matches

	      package names, descriptions, and names of files/paths within all
	      packages.

DESCRIPTION
	The   cygcheck program is a diagnostic utility for dealing with Cygwin
       programs. If you are familiar with dpkg or  rpm, cygcheck is similar in
       many  ways. (The major difference is that  setup.exe handles installing
       and uninstalling packages; see  internet-setup /xref for more  informa‐
       tion.)

	The   -c  option  checks  the  version and status of  installed Cygwin
       packages. If you specify one or more package names, cygcheck will limit
       its  output  to those packages, or with no arguments it lists all pack‐
       ages. A package will be marked Incomplete if files originally installed
       are  no longer present. The best thing to do in that situation is rein‐
       stall the package with  setup.exe. To see which files are missing,  use
       the  -v	option.	 If you do not need to know the status of each package
       and want	 cygcheck to run faster, add the -d option and	cygcheck  will
       only output the name and version for each package.

	If  you	 list  one or more programs on the command line, cygcheck will
       diagnose the runtime environment of that program or programs, providing
       the  names  of  DLL files on which the program depends.	If you specify
       the  -s option, cygcheck will give general system information.  If  you
       list one or more programs on the command line and specify -s,  cygcheck
       will report on both.

	The  -f option helps you to track down which package a file came from,
       and   -l	 lists	all files in a package. For example, to find out about
       /usr/bin/less and its package: cygcheck usage

       $ cygcheck -f /usr/bin/less
       less-381-1
       $ cygcheck -l less
       /usr/bin/less.exe
       /usr/bin/lessecho.exe
       /usr/bin/lesskey.exe
       /usr/man/man1/less.1
       /usr/man/man1/lesskey.1

       The  -h option prints additional helpful messages in the report, at the
       beginning  of each section.  It also adds table column headings.	 While
       this is useful information, it also  adds  some	to  the	 size  of  the
       report,	so if you want a compact report or if you know what everything
       is already, just leave this out.

       The  -v option causes the output to be more verbose.  What  this	 means
       is  that	 additional  information will be reported which is usually not
       interesting, such as the internal version numbers of  DLLs,  additional
       information  about  recursive DLL usage, and if a file in one directory
       in the PATH also occurs in other directories on the PATH.

       The  -r option causes cygcheck to search your registry for  information
       that  is	 relevent  to Cygwin programs.	These registry entries are the
       ones that have "Cygwin" in the name.  If you are	 paranoid  about  pri‐
       vacy,  you  may remove information from this report, but please keep in
       mind that doing so makes it harder to diagnose your problems.

       In contrast to the other options that  search  the  packages  that  are
       installed  on  your  local system, the  -p option can be used to search
       the entire official Cygwin package repository.  It takes as argument  a
       Perl-compatible	regular	 expression  which  is	used  to match package
       names,  package descriptions, and path/filenames	 of  the  contents  of
       packages.   This	 feature requires an active internet connection, since
       it must query the cygwin.com web site.  In fact, it  is	equalivant  to
       the search that is available on the  package listing

       For example, perhaps you are getting an error because you are missing a
       certain DLL and you want to know which package includes that file:

       $ cygcheck -p 'cygintl-2\.dll'
       Found 1 matches for 'cygintl-2\.dll'.
       libintl2-0.12.1-3	 GNU Internationalization runtime library
       $ cygcheck -p 'libexpat.*\.a'
       Found 2 matches for 'libexpat.*\.a'.
       expat-1.95.7-1		 XML parser library written in C
       expat-1.95.8-1		 XML parser library written in C
       $ cygcheck -p '/ls\.exe'
       Found 2 matches for '/ls\.exe'.
       coreutils-5.2.1-5	 GNU core utilities (includes  fileutils,  sh-
       utils and textutils)
       coreutils-5.3.0-6	  GNU  core utilities (includes fileutils, sh-
       utils and textutils)

       Note that this option takes a regular expression, not a glob  or	 wild‐
       card. This means that you need to use  .* if you want something similar
       to the wildcard	* commonly used in filename  globbing.	Similarly,  to
       match the period character you should use  \. since the	. character in
       a regexp is a metacharacter that will match  any	 character.   Also  be
       aware  that  the characters such as  \ and  * are shell metacharacters,
       so  they must be either escaped or quoted, as in the example above.

       The third example above illustrates that if you want to match  a	 whole
       filename, you should include the	 / path seperator.  In the given exam‐
       ple this ensures that filenames that happen to end in  ls.exe  such  as
       ncftpls.exe  are	 not shown. Note that this use does not mean "look for
       packages with  ls in the root directory," since the  / can  match  any‐
       where  in  the  path.   It's  just there to anchor the match so that it
       matches a full filename.

       By default the matching is case-sensitive.  To get a  case  insensitive
       match,  begin  your regexp with	(?i) which is a PCRE-specific feature.
       For complete documentation on Perl-compatible regular expression syntax
       and  options, read the  perlre manpage, or one of many websites such as
       perldoc.com that document the Perl language.

       The  cygcheck program should be used to	send  information  about  your
       system  for  troubleshooting  when  requested.	When asked to run this
       command save the output so that you can email it, for example:

       $   cygcheck -s -v -r -h > cygcheck_output.txt

	Each Cygwin DLL stores its path and installation key in the  registry.
       This allows troubleshooting of problems which could be a result of hav‐
       ing multiple  concurrent	 Cygwin	 installations.	  However,  if	you're
       experimenting a lot with different Cygwin installation paths, your reg‐
       istry could  accumulate a lot of old Cygwin  installation  entries  for
       which  the  installation	 doesn't  exist	 anymore.  To get rid of these
       orphaned registry entries, use the  cygcheck  --delete-orphaned-instal‐
       lation-keys command.

	Each  Cygwin  DLL  generates  a	 key value from its installation path.
       This value is not only stored in the registry, it's also used to gener‐
       ate  global  object  names  used for interprocess communication.	  This
       keeps different Cygwin installations separate.  Processes running under
       a Cygwin DLL installed in C:\cygwin don't see processes running under a
       Cygwin DLL installed in C:\Program Files\cygwin.	 This  allows  running
       multiple	 versions  of  Cygwin DLLs without these versions to interfere
       with each other, or to run small third-party installations for  a  spe‐
       cific purpose independently from a Cygwin net distribution.

	For  debugging	purposes  it  could be desired that the various Cygwin
       DLLs use the same key, independently from their installation paths.  If
       the  DLLs  have different versions, trying to run processes under these
       DLLs concurrently will result in error messages like this one:

       *** shared version mismatch detected - 0x8A88009C/0x75BE0074.
       This problem is probably due to using incompatible versions of the cyg‐
       win DLL.
       and  delete  all	 but the most recent version.  The most recent version
       *should*
       reside in x:\\cygwin\\bin, where 'x' is the drive on which you have
       installed the cygwin distribution.  Rebooting is also suggested if you
       are unable to find another cygwin DLL.

	To disable the usage of a unique key value of a	 certain  Cygwin  DLL,
       use  the	  cygcheck  --disable-unique-object-names  Cygwin-DLL command.
       Cygwin-DLL is the Windows path (*not* a	Cygwin POSIX path) to the  DLL
       for  which you want to disable this feature. Note that you have to stop
       all Cygwin processes running under this DLL, before you're  allowed  to
       change  this  setting.	For  instance, run cygcheck from a DOS command
       line for this purpose.

       To re-enable the usage of a unique  key,	 use  the  cygcheck  --enable-
       unique-object-names  Cygwin-DLL command. This option has the same char‐
       acteristics as the --disable-unique-object-names option

       Finally, you can use cygcheck --show-unique-object-names Cygwin-DLL  to
       find  out  if  the given Cygwin DLL use unique object names or not.  In
       contrast to the --disable-... and  --enable-... options,	 the   --show-
       unique-object-names  option  also  works for Cygwin DLLs which are cur‐
       rently in use.

COPYRIGHT
       Cygwin is Copyright (C) 1995-2010 Red Hat, Inc.

       Cygwin is Free software; for complete licensing information, refer to:

       http://cygwin.com/licensing.html

SEE ALSO
       The full documentation to the Cygwin API is maintained on the web at:

       http://cygwin.com/cygwin-api/cygwin-api.html

       The website is updated more frequently than the man pages and should be
       considered the authoritative source of information.

				  April 2010			   CYGCHECK(1)
[top]

List of man pages available for Cygwin

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net