docker container for building cygwin on Linux

Johannes Thoma johannes@johannesthoma.com
Tue Nov 7 15:59:22 GMT 2023


Hi list,

I just published a docker image with all the necessary build dependencies (except
for dumper.exe) for building cygwin. We are using it to compile our WinDRBD driver
and with a few additional packages it was possible to compile cygwin (newlib-cygwin)
as well.

This is how to obtain it:

docker pull quay.io/johannesthoma/windrbd-devenv-cygwin

To build the container yourself you can use the

make docker-cygwin

command of the WinDRBD driver (https://github.com/LINBIT/WinDRBD) (you have
to use the windrbd-1.2 branch). Since this takes an hour to complete (2 C-compilers
being built) I recommend to use the quay.io image.

There is one thing about the container which is a little bit how do I say -
not so clean - we import the cygwin-gcc compiler from Fedora 38 packages
in a Ubuntu 22.04 - from
https://download.copr.fedorainfracloud.org/results/yselkowitz/cygwin/
I don't know if yselkowitz is on the cygwin list but it would be helpful
to have maybe a script to build those packages, so if someone could
share some hints how to build the cygwin compilers that would be
of great help.

In case you are not familiar with docker here's what I use:

docker tag quay.io/johannesthoma/windrbd-devenv-cygwin windrbd-devenv-cygwin
docker run -v /home/johannes/cygwin-sources-new:/cygwin-sources --name build-cygwin-new -d windrbd-devenv-cygwin tail -f /dev/null
docker exec -it build-cygwin-new bash

 From there everything in newlib-cygwin (except for dumper so configure winsup
with --disable-dumper) should be buildable.

If you find this container useful, have questions or feature requests or find bugs
or things not working as expected, please let me know.

Best regards,

  - Johannes


More information about the Cygwin mailing list