Thank you Mario, I went straight to the wiki to add my notes while it is still fresh enough. Hope it helps others.

Le 03/07/2021 à 09:48, Mario Domenech Goulart a écrit :
Hi Théo and all,

On Sun, 27 Jun 2021 12:34:24 +0200 Théo Cavignac <theo.cavig...@gmail.com> 
wrote:

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.
That looks cool!  Thanks for sharing it!

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 ?
Sure.  You should now be able to use your bug tracker credentials to
authenticate to the wiki too.

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 !
All the best.
Mario

Reply via email to