[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Compiling Chicken app for Windows from linux with Docker
From: |
Théo Cavignac |
Subject: |
Compiling Chicken app for Windows from linux with Docker |
Date: |
Sun, 27 Jun 2021 12:34:24 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.2 |
Hi all,
After my previous mail concerning the static compilation in a Docker
container I figured it would be nice to use the same idea to create a
cross compilation environment for linux-to-windows dev.
Using the cross development article on the wiki, digging through the
build system a bit and fiddling a lot I created a MinGW-w64 based
environment that let you build standalone apps from your chicken code
and your favorite eggs that can be distributed as a single binary
without needing dev oriented dependencies like cygwin or MSYS2.
I have to say I am pretty happy with this achievement, even if it may
not be much, because I learned a ton on the building system of Chicken,
and on linking in general.
I plan on contributing to the wiki some of the knowledge I gathered
during the process. I already submitted a ticket to fix what seems to be
a typo in the Makefile.cross-linux-mingw file in chicken sources.
By the way, I don't think I have an account to edit the wiki. Can I have
one with username lattay ?
Here is the Docker environment ready to be built:
https://github.com/Lattay/chicken_docker/tree/main/mingw
Here is an image ready to go (because compiling chicken twice is pretty
long): https://hub.docker.com/repository/docker/lattay/chicken-mingw
The script that automate the process of spinning the container and
extracting the final binary has been updated accordingly and now support
the option `--platform mingw`:
https://github.com/Lattay/chicken-build-static
Currently my testing of this environment is pretty limited. I did a test
with the args egg but I don't know how well it would perform with more
complex eggs like bind based one.
I don't have a non trivial app that would work on windows to test with
this process.
Hence, I would be interested in some real world Windows ready app for this.
I would also be interested in feedback from testing this with your own app.
Also, I have yet to understand what is the difference between console
and GUI app in windows and how this environment could be used to build
graphical apps.
As always, I am very open to critiques and suggestions so please feel free !
Cheers,
- Compiling Chicken app for Windows from linux with Docker,
Théo Cavignac <=