LINUX.ORG.RU

Вышел Cygwin 3.2.0

 


2

1

29 марта 2021 года разработчики опубликовали новый релиз Cygwin 3.2.0.


Cygwin — UNIX-подобная среда и интерфейс командной строки для Microsoft Windows. Cygwin обеспечивает тесную интеграцию приложений, данных и ресурсов Windows с приложениями, данными и ресурсами UNIX-подобной среды. Из среды Cygwin можно запускать обычные приложения Windows, также можно использовать инструменты Cygwin из Windows.

Cygwin состоит из двух частей: динамически подключаемой библиотеки (DLL) cygwin1.dll, которая обеспечивает совместимость API и реализует значительную часть стандарта POSIX, и огромной коллекции приложений, которые обеспечивают привычную среду UNIX, включая Unix shell.

Wikipedia ©


Основные изменения:

  • Переработана поддержка псевдоконсоли. Теперь она активируется только при запуске приложений не из состава пакета
  • Реализован C11 API, позволяющий работать с потоками: call_once, cnd_broadcast, cnd_destroy, cnd_init, cnd_signal, cnd_timedwait, cnd_wait, mtx_destroy, mtx_init, mtx_lock, mtx_timedlock, mtx_trylock, mtx_unlock, thrd_create, thrd_current, thrd_detach, thrd_equal, thrd_exit, thrd_join, thrd_sleep, thrd_yield, tss_create, tss_delete, tss_get, tss_set
  • В реализацию консоли добавлен новый поток, обрабатывающий клавиатурные комбинации, такие как Ctrl-Z (VSUSP), Ctrl-\ (VQUIT), Ctrl-S (VSTOP), Ctrl-Q (VSTART), а также сигнал SIGWINCH (Ранее эти комбинации обрабатывались только при вызове функций read() или select())
  • В функцию fchmodat() добавлена поддержка флага AT_SYMLINK_NOFOLLOW
  • Реализовано распознание сокетов AF_UNIX
  • Изменено число дочерних процессов:
    • c 256 до 5000 на 64-разрядных системах
    • до 1200 на 32-разрядных

>>> Сайт проекта

>>> Исходные коды проекта (GNU GPL)

>>> Загрузки

>>> Подробности

★★★★★

Проверено: Shaman007 ()
Последнее исправление: Shaman007 (всего исправлений: 2)

Ответ на: комментарий от anonymous

так толком и не попользовался этим, всегда предпочитал msys

в msys из-за MinGW ~= Minimal GNU for windows много чего не реализовано.

например, возьми какой-то сетевой сервер, мудов или мумпсов там. с сокетами, форком, сигналами, таймерами и алармами. под msys придётся портировать винсок, под CreateProcess/Thread, с хендлами и таймером (который в WinAPI привязывается почему-то к окну, даже если аpp-а консольная).

винсок ещё может быть винсок2 асинхронный с заморочками.

в общем, по идее нужен нормальный такой порт под винду.

либо пересобрать под среду, в которой уже есть все эти форки, сигналы, winpthreads и прочие костыли.

такие как цугвин или https://www.midipix.org/ https://git.midipix.org/ (мне вот второй больше нравится).

а ещё есть MCRTGTHREADS форк mingw и CRT оттуда, там тоже занятно.

anonymous
()
Ответ на: комментарий от Archer73

Не вижу смысла в msys2 если есть WSL

msys2 или cygwin - это не рыба ни мясо.

Работать нужно или в cmd (cl compiler) или в wsl (gcc compiler).

Ну это ихо конечно…

FreakMurderer
()
Последнее исправление: FreakMurderer (всего исправлений: 1)
Ответ на: комментарий от windows10

Как работает GTK под виндой - можно как раз увидеть на примере твоего гимпа, когда под спермерочкой или десяточкой - контролы сбежавшие с Win’95

Эти «контролы» (где ты нахватался этого жаргона?) работают не хуже, чем у прочих. Выглядят как-то не так? Ну так на винде никогда не было стилистического однообразия.

dexpl ★★★★★
()
Ответ на: комментарий от cvs-255

AFAIR, msys2 не является зависимостью времени выполнения.

dexpl ★★★★★
()
Ответ на: комментарий от FreakMurderer

До того как microsoft сделали костыль под названием vcpkg, собирать MSVC было очень больно (не говоря уже о том что некоторые вещи опенсорные им тупо не собираются, требуя патчей специально для msvc), да и научить cmd по умолчанию использовать юникодную локаль ms так и не научили (имея Shift-JIS намучался со сборкой KDEшных тулз MSVC). С msys2 это всё намного проще, правда собирать отдельные релизы не очень хорошо (ручками копировать зависимости надо), но зато всё централизовано обновляется.

anonymous
()
Ответ на: комментарий от cvs-255

А зачем его тащить? Просто скопируй библиотеки или собери как статичный, первый раз под венду собираешь?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.