Apa daftar paket minimal untuk Cygwin?

6

Itu Cygwin FAQ menyebutkan bahwa yang pertama kali diinstal, exe setup akan mengunduh "subset minimal dari semua paket yang tersedia." Paket mana yang merupakan bagian dari subset ini?

Saya menginstal Cygwin di komputer tanpa akses Internet, jadi saya perlu tahu paket apa yang harus diunduh karena saya tidak dapat menjalankan setup.exe di komputer dengan Internet.

Neil
sumber

Jawaban:

1

Berikut adalah daftar minimal paket untuk instalasi "basis" dari Cygwin:

_autorebase
_update-info-dir
alternatives
attr
base-cygwin
base-files
bash
bzip2
ca-certificates
coreutils
cygutils
cygwin
dash
editrights
file
findutils
gawk
gcc
gdbm
getent
gettext
gmp
grep
groff
gzip
hostname
ipc-utils
less
libargp
libffi
libiconv
libpipeline
libtasn1
login
lynx
man-db
mintty
mpfr
ncurses
openssl
p11-kit
pcre
popt
readline
rebase
run
sed
tar
texinfo
tzcode
util-linux
vim
which
xz
zlib

Ukuran total akan ~ 1,4 GB.

Christophe
sumber
Paket dasar minimal tidak dapat 1.4GB, the Instal halaman mengatakan "Hanya paket basis minimal dari distribusi Cygwin yang terinstal secara default, yang membutuhkan sekitar 100 MB" ...
Xen2050
@Christophe (atau siapa pun), maukah Anda memberi tahu kami (1) jika paket default masih sama di tahun 2017, dan (2) seberapa besar instalasi defaultnya, tolong? Jawaban Anda adalah hal terdekat yang pernah saya lihat tentang ini, dan info ini akan sangat berguna.
Fr.
1

Saya telah bereksperimen dengan Cygwin berusaha untuk mendapatkan "instalasi tanpa tulang", minimal. Saya menemukan bahwa menginstal utilitas seperti grep, gawk, sed dan alat serupa memiliki ketergantungan pada cygwin, base-Cygwin dan terkadang alat yang tidak diinginkan seperti bash, coreutils dll. tujuan. Saya hanya ingin mendapatkan alat dan dll yang diperlukan mereka diinstal dan mulai memeriksa paket Cygwin. Saya menemukan bahwa tidak menggunakan setup.exe yang disediakan oleh Cygwin adalah cara alternatif untuk menyelesaikan instalasi Cygwin minimal. Dan ini adalah bagaimana saya menyelesaikannya.

  1. Gunakan setup.exe yang disediakan oleh Cygwin untuk mengunduh semua paket - unduh saja dan tidak ada instal.
  2. Setelah unduhan berhasil diselesaikan, paket-paket individual seperti zlib, gawk, grep, libiconv ditemukan di bawah direktori x86 / release atau x86_64 / release.
  3. Setiap paket 'tar'red dan dikompresi menggunakan alat' xz 'atau bzip dan disimpan di direktori masing-masing.
  4. Untuk menginstal alat tertentu seperti sed atau gawk, yang perlu dilakukan adalah mengekstrak alat yang dapat dieksekusi dan dependensinya (.dll)

    Sebelum Anda mencoba yang berikut, pastikan Anda memiliki alat seperti 7z.exe, xz.exe, bzip2 atau lainnya yang mampu Uncompressing sebuah Arsip .xz atau bzip

Menginstal contoh gawk di bawah ini:

  1. Ekstrak arsip gawk.exe dari gawk-4.1.3-1.tar.xz menggunakan perintah - 7z.exe e -so gawk-4.1.3-1.tar.xz | tar xvf -
  2. Setelah selesai, Anda harus menemukan gawk.exe dalam subfolder biasanya, usr / bin di bawah folder release / gawk
  3. Temukan dependensi untuk gawk - Anda dapat melakukan ini dalam beberapa cara.

    Periksa file setup.ini Cygwin yang ditemukan di folder x86 atau x86_64. Cari string '@ gawk' dan di baris setelah baris ini Anda harus menemukan baris "wajib:" yang mencantumkan dependensi.

    Milik saya berbunyi seperti ini - "membutuhkan: bash cygwin libgmp10 libintl8 libmpfr4 libreadline7"

Agar gawk dapat berjalan, bash bukanlah suatu keharusan karena kita memiliki shell perintah windows. (bash disertakan untuk mendapatkan beberapa dll yang diperlukan oleh gawk. Namun, hal itu menyebabkan lebih banyak file yang tidak perlu diinstal). Ketergantungan lainnya berisi file yang harus dijalankan oleh gawk. Ekstrak masing-masing paket di atas menggunakan alat seperti 7z atau xz ke file individual.

Setelah semua dependensi diekstraksi, salin alat yang Anda butuhkan (grep / sed / gawk) ke folder dan semua .dlls yang tergantung Anda sekarang dapat menjalankan alat Anda dengan set minimum. Instalasi cygwin-tulang.

Perhatian: Mungkin tidak cukup hanya mengekstrak dependensi yang tercantum dalam setup.ini untuk setiap alat. Terkadang, Anda mungkin perlu menjalankan / menjalankan alat untuk menemukan bahwa ada lebih banyak dll yang diperlukan.

Ada cara lain untuk mengetahui dll yang diperlukan oleh exe - Anda dapat menggunakan dumpbin dari MS atau dependensi walker, ndepends atau alat serupa untuk menemukan daftar dll dependen

Berkonsultasi - https://stackoverflow.com/questions/362560/how-do-i-detect-the-dlls-required-by-an-application https://stackoverflow.com/questions/475148/how-do-i-find-out-which-dlls-an-executable-will-load

Saya juga brute memaksa info dll dependen dengan hanya menjalankan alat dan menginstal dll hilang yang tercantum satu per satu dengan mengekstraksi dari paket yang diperlukan.

Ketika Anda menjalankan exe dan jika ada kesalahan dengan pesan .dll yang hilang, cari paket yang berisi dll di sini - https://cygwin.com/cgi-bin2/package-grep.cgi . Masukkan nama lengkap / sebagian dari dll yang hilang untuk menemukan nama paket yang berisi dll.

Akhirnya, saya berakhir dengan instalasi cygwin telanjang-tulang hanya dengan alat dan dll yang saya butuhkan. Contoh: gawk - gawk.exe dan dll berikut - cygwin1.dll, cyggmp-10.dll, cygiconv-2.dll, cygintl-8.dll, cygmpfr-4.dll, cyggcc_s-seh-1.dll, cygncursesw- 10.dll, cygreadline7.dll

sed - sed.exe dan lain-lain - cygwin1.dll, cygintl-8.dll

Semoga ini bermanfaat. Penginstal Cywin juga melakukan hal-hal mendasar, yang tidak akan saya bahas di sini

Agnatha
sumber
1
Menambahkan beberapa jeda dan pemformatan lagi (gunakan kode dan tanda kutip dan daftar itu) akan menjadikan ini jawaban yang jauh lebih jelas.
music2myear
0

Mengapa tidak menginstal saja ke drive USB dan salin file dari sana ke komputer yang Anda inginkan sudah diatur? Pertanyaan faq ini menunjukkan bahwa hak administratif hanya diperlukan untuk mengatur izin keamanan pada file sehingga semua orang di mesin dapat mengakses file. Jika Anda menginstalnya ke lokasi yang berbeda dan kemudian menyalin seluruh direktori ke mesin baru, itu harus bekerja dengan baik. (Catatan: Saya belum mengujinya sendiri.)

Ben Richards
sumber
1
Sayangnya, saya bahkan tidak dapat menjalankannya tanpa hak admin (komputer sangat terkunci).
Neil