cygwin

Cygwin для программиста C/С++

на основе Windows

Желательно чтобы пользователь назывался английскими буквами без лишних знаков.
У меня просто user.

Cygwin

Включить кейс-сенситивность файловой системы

regedit от админа, изменить ключ
Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel dword:obcaseinsensitive <=0
в ноль.
Перезагрузиться.

Папка установки

md c:\cygwin64_2022.04.29

mklink /J c:\cygwin c:\cygwin64_2022_04_29
//я делаю это через Far, Alt+F6

Установка

cкачать

https://www.cygwin.com/setup-x86_64.exe
куда-то в c:/install/cygwin
(оно при установке создаст рядом кэш скачанных пакетов *.tar.gz, и запомнит путь)

Запустить

Спросит пароль админа

Install from internet Далее>

Root ditectory: c:\cygwin
Install For: All Users

Local package directory Далее>

Use system proxy settings Далее>

Download Site
выбираю https://cygwin.mirrir.constant.com потому что потому

Выбор пакетов к установке

Можно выбрать View:Category и в строке поиска набирать название пакета.

Когда пакет нашелся, меняю в строчке пакета Skip на нужную версию. Версию выбираю обчыно последнюю , но без пометки типа (Тест)

Набор пакетов к установке:

gdb Версия 8.3.1, с более поздними не работает эклипс.
gcc-g++
clang
clang-analyzer
automake
autoconf
make
cmake
bison
flex
(gawk   само)
diffutils само
patch
gperf
help2man
texinfo
wget
curl
xz само
zip
unzip
bzip2 само
gzip само
libncurses-devel
ncurses         само
libncursesw10   само
libtool
libintl-devel
vim
vim-clang-format
nano
mc
git
python39-devel
expect
expat
libexpat1
openssh 8.8p1-1, новее не работает scp. - пробую сейчас latest 9.1
sshpass


Далее и Подтвердить установку зависимостей.
В итоге в меню Пуск появится Cygwin64 terminal, запустить его, он сделает некий postinstall

PATH

Добавить C:\cygwin\bin в PATH
Пуск/Система/Дополнительные параметры системы/Переменные среды/Системные переменные/PATH

Обратить внимание что в PATH может конфликтовать,
в частности C:\Windows\System32\OpenSSH заглушить

Чтобы ssh не разрывал сессию по таймауту неактивности

echo "ServerAliveInterval 30" >> /home/user/.ssh/config