On 21/06/2024 09.52, Mark Geisert via Cygwin wrote:
On 6/20/2024 11:21 PM, Federico Kircheis via Cygwin wrote:
Hello to everyone,
yesterday I've uploaded a new cmus package, with some optional
features enabled.
Today, through setup.exe, I noticed that now cmus brings clang as
dependency.
Is there something I can use for analyzing transitive dependencies of
a package?
It does not make sense for an audio player to bring a compiler as
dependency, and would like to remove the offending dependency.
Try the cygcheck-dep tool, downloadable through setup.exe. It was
created to answer questions just like this. Recommended :-).
..mark
Thank you, very useful.
Still some questions, as I might be me holding it wrong.
First; is it expected that I need admin rights to execute it?
----
mkdir: cannot create directory ‘/var/cache/cygcheck-dep’: Permission denied
/usr/bin/cygcheck-dep: unable to create cache directory:
/usr/bin/cygcheck-dep: /var/cache/cygcheck-dep
----
Can't it use /tmp or some other location for caching data?
After my first run as admin, after 2 minutes, I got following output
----
cygcheck-dep -r cmus
bzip2: /var/cache/cygcheck-dep/cygwin/x86_64/setup.bz2: data integrity
(CRC) error in data
You can use the `bzip2recover' program to attempt to recover
data from undamaged sections of corrupted files.
/usr/bin/cygcheck-dep: failed to check integrity of downloaded
<setup.ini> file:
/usr/bin/cygcheck-dep: /var/cache/cygcheck-dep/cygwin/x86_64/setup.bz2
/usr/bin/cygcheck-dep: you may try to run with -c option to use cached
file from previous download
----
Might have been a spurious error, because after a rerun (without -c) I
did not get that error anymore.
Third run; are all those warnings expected?
----
cygcheck-dep -R cmus
# /usr/bin/cygcheck-dep:
# warning: not available package version:
# failed to parse <setup.ini> file record of
# 'version:' for the following packages:
#( gdb-multiarch libcoordgen2 libcoordgen3 libgnat12 libgnat13 liblua5.4
libwx_baseu3.1-devel libwx_baseu3.1_5 libwx_gtk2u3.1-devel
libwx_gtk2u3.1_5 libwx_gtk3u3.1-devel libwx_gtk3u3.1_5
mingw64-i686-openssl-debuginfo mingw64-x86_64-openssl-debuginfo
python39-imaging python39-imaging-tk python39-wx tzdata-posix
tzdata-right wxWidgets3.1-debuginfo wxWidgets3.1-doc )
# /usr/bin/cygcheck-dep:
# warning: extraneous installed packages with unknown dependencies:
# the following installed packages are not present
# in Cygwin standard distribution:
#( libdialog14 )
# /usr/bin/cygcheck-dep:
# warning: unknown package names:
# the following encountered package names does not match
# any available or installed package (use -M switch to get details):
#( python27 python-avogadro python2-avogadro
gstreamer1.0-plugins-ugly-free-mad _update-info-dir libedit
libexpat1-devel gmp-doc libMagickCore6 libncursesw-devel rdiff-debuginfo
mate-themes-extras emacs-mercurial mercurial-convert mercurial-gui
mercurial-highlight mingw64-i686-libgd mingw64-x86_64-libgd ncursesw
ncursesw-demo octave-octcdf perl-Parse-CPAN-Meta perl-File-Slurp-Unicode
perl-Locale-gettext perl-LWP net-snmp-perl perl-Term-ReadKey perl-Gnome2
perl-Gnome2-Canvas perl-Gnome2-GConf perl-Gnome2-Rsvg perl-Gnome2-VFS
perl-Gnome2-Vte perl-Gnome2-Wnck perl-Gtk2 perl-Gtk2-GladeXML
perl-Gtk2-Notify perl-Gtk2-SourceView2 perl-Gtk2-Spell perl-Gtk2-Unique
perl-Gtk2-WebKit kde-wallpapers procps procps-debuginfo
python2-cairo-devel python3-dbus-debuginfo python-cv python2_cv2
python-magic python2-magic python-speechd python-zbar python-pypdf
python-odf python-pyqt5-devel python-sip-devel rpm-doc
rxvt-unicode-X-debuginfo ksnapshot-debuginfo font-unifont-misc
font-unifont-ttf xfce4-mixer xfce4-mixer-debuginfo transfig-debuginfo
_windows(>=6.3) cygwin(>=3.5.0-0) emacs-bin gcc11 perl5_036 ruby_32
cygwin(>=3.5.0))
# /usr/bin/cygcheck-dep:
# warning: missing required dependencies:
# the following packages are not installed, but are required as
dependencies
# for some installed packages (use -m switch to get details):
#( _windows(>=6.3) cygwin(>=3.5.0-0) emacs-bin gcc11 perl5_036 ruby_32
cygwin(>=3.5.0) )
cmus: recursively requires ( ... a lot of packages ... )
----
otherwise, the ouput of "recursively requires" was helpful, but only
limited; I could see clang as dependency, but not why.
I used "cygcheck-dep -n clang" and followed the dependency chain
manually; I hoped that "cygcheck-dep -R cmus" would have showed
something like a tree structure.
But here comes the important question.
How can I use cygcheck-dep for a package that has not been uploaded yet?
I would like to avoid uploading a new package, and verify afterwards if
everything looks fine or not.
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple