It’s not containerized. Right now it’s built on a Windows 10 VM using buildserver/buildpackage.ps1 in gnucash-on-windows. Although the script should update MinGW64 at every run, in practice it doesn’t when there’s a major change because MinGW requires a restart in that case so it has to be done manually. I have a local VM with a matching setup and every once in a while I do a Mingw64 update, get everything working again, commit the changes, then do a manual update on the build VM.
Regards, John Ralls > On Mar 20, 2025, at 12:38 PM, <russ.go...@gmail.com> <russ.go...@gmail.com> > wrote: > > Yeah, I think that may be the way to go. It’s been useful learning some of > the issues with the MINGW environment but it sure seems like it might be > painful developing in this environment. I want to start looking at actual > gnucash code so I may do as you suggest. > So how are the release builds for windows created? Is there a containerized > windows build environment that has all the MINGW environment already setup, > and it’s just painful to get there from bare metal, or is it cross compiled > to Windows from Linux somehow? > From: John Ralls <jra...@ceridwen.us> > Sent: Tuesday, March 18, 2025 9:00 PM > To: russ.go...@gmail.com > Cc: Robert Fewell <14ubo...@gmail.com>; GnuCash Development > <gnucash-devel@gnucash.org> > Subject: Re: GnuCash Windows Build Help > Russ, > Have you considered setting up a Linux build environment instead? You can > install your distro of choice in the Windows Subsystem for Linux (aka WSL). > Many of them have a package manager target similar to Debian/Ubuntu’s `apt > build-dep gnucash` that sets up everything you need except a code editor. > It’s much less frustrating than the MinGW64 environment. > Regards, > John Ralls > > >> On Mar 18, 2025, at 15:27, <russ.go...@gmail.com> <russ.go...@gmail.com> >> wrote: >> That would be great. >> I‘ve been converting the build script to python for my own uses so I’d be >> very interested in anything you discover. >> I am new to the MSYS2/MING environment and am still coming up to speed. >> I want to start working on the C++ code but need to understand the build and >> env details first I think. >> Thanks, we’ll keep in touch >> From: Robert Fewell <14ubo...@gmail.com> >> Sent: Monday, March 17, 2025 3:18 AM >> To: russ.go...@gmail.com >> Cc: Kevin Sanders <kbsand...@hotmail.com>; GnuCash Development >> <gnucash-devel@gnucash.org> >> Subject: Re: GnuCash Windows Build Help >> Russ, >> After a PC swap to Windows 11, I need to redo my windows build machine so >> will be starting from scratch. I should be able to do this this week so will >> report back here and hopefully be able to update the build script. >> Regards, >> Robert >> On Sun, 16 Mar 2025 at 23:10, <russ.go...@gmail.com> wrote: >>> >>> >>> Hello all, I am also trying to build GnuCash on native Windows (64-bit >>> Windows 10) >>> I've reviewed the other threads on here from Kevin Sanders and Robert >>> Fewell about native windows builds and have run into the same problems >>> during bootstrap and worked around them in similar ways. >>> I'm stuck on step 1/14 running jhbuild and was hoping one of them might >>> have some insight. >>> Prior to building the first module, I ran into similar problems as others: >>> • I ran into the same 'distutils' problem >>> • This was which was addressed via >>> • Running: "pacman -S python-setuptools" >>> • I ran into the same missing 'gcrypt' problem >>> • This was addressed via >>> • Installing win-sudo >>> • Running: "sudo jhbuild sysdeps --install" >>> Step 1/14 is building OpenSP-1.5.2 >>> It checks out and configures fine, but once the build starts I see what >>> looks like maybe some header file problems but it errors out building >>> CmdLineApp.lo, DtdDeclEventHandler.lo Entity.lo and ArcEngine.lo >>> I saw Robert Fewell notes on failures in OpenSP build and took those >>> changes to utils/packagedb.py but that doesn't address compilation errors >>> I'm seeing. >>> If anyone has any insights on these specific issues that would be great. >>> Short of that, I want to start at the first failure but the parallel builds >>> are gumming the output >>> Q1: Can someone point me to where/how to eliminate the parallel jhbuilds >>> (make -j5) so I can at least see some serial output? >>> Thanks for any pointers you might have. >>> • Russ >>> From: gnucash-devel >>> <gnucash-devel-bounces+russ.gorby=gmail....@gnucash.org> On Behalf Of Kevin >>> Sanders >>> Sent: Thursday, November 7, 2024 12:00 PM >>> To: GnuCash Development <gnucash-devel@gnucash.org> >>> Subject: Re: GnuCash Windows Build Help >>> Thanks John, I have joined the mailing list as suggested. >>> I installed the recommended distutils extra package and it completed >>> successfully but the error remains. >>> Do you know what controls the version of python MinGW32 is using? Latest >>> stable or something like that? >>> The word "python" appears only once in the PowerShell setup script and is >>> sans version. >>> Perhaps this could be a PATH or environment issue where installed modules >>> cannot be resolved? >>> Console Output: >>> Kevin@Kevin-PC MINGW32 /c/gcdev64/src/gnucash-on-windows.git >>> $ pacman -S mingw-w64-i686-python-distutils-extra >>> resolving dependencies... >>> looking for conflicting packages... >>> Packages (1) mingw-w64-i686-python-distutils-extra-2.39-4 >>> Total Download Size: 0.04 MiB >>> Total Installed Size: 0.11 MiB >>> :: Proceed with installation? [Y/n] y >>> :: Retrieving packages... >>> mingw-w64-i686-python-dist... 36.5 KiB 39.1 KiB/s 00:01 >>> [###############################] 100% >>> (1/1) checking keys in keyring >>> [###############################] 100% >>> (1/1) checking package integrity >>> [###############################] 100% >>> (1/1) loading package files >>> [###############################] 100% >>> (1/1) checking for file conflicts >>> [###############################] 100% >>> (1/1) checking available disk space >>> [###############################] 100% >>> :: Processing package changes... >>> (1/1) installing mingw-w64-i686-python-distutils-extra >>> [###############################] 100% >>> Kevin@Kevin-PC MINGW32 /c/gcdev64/src/gnucash-on-windows.git >>> $ TARGET=gnucash-stable jhbuild -f jhbuildrc build >>> Traceback (most recent call last): >>> File "/usr/bin/jhbuild", line 22, in <module> >>> import jhbuild.main >>> File "/c/gcdev64/src/jhbuild.git/jhbuild/main.py", line 26, in <module> >>> import jhbuild.config >>> File "/c/gcdev64/src/jhbuild.git/jhbuild/config.py", line 31, in <module> >>> from jhbuild.environment import setup_env, setup_env_defaults, addpath >>> File "/c/gcdev64/src/jhbuild.git/jhbuild/environment.py", line 24, in >>> <module> >>> from distutils.sysconfig import get_python_lib >>> ModuleNotFoundError: No module named 'distutils' >>> From: John Ralls <jra...@ceridwen.us> >>> Sent: Thursday, November 7, 2024 12:24 PM >>> To: Kevin Sanders <kbsand...@hotmail.com> >>> Cc: GnuCash Development <gnucash-devel@gnucash.org> >>> Subject: Re: GnuCash Windows Build Help >>> Kevin, >>> Welcome to GnuCash. Please don’t contact the developers directly; always >>> use one of the mailing lists (https://wiki.gnucash.org/wiki/Mailing_Lists). >>> You can pick whether user or devel is appropriate for a particular >>> conversation, the developers monitor both. For this conversation I’ve >>> picked devel and cc’d it for your convenience. You’ll need to subscribe to >>> it to reply. >>> That sounds like a Mingw64 problem, as Python officially didn’t remove >>> distutils until 3.12. OTOH distutils has been deprecated for years and the >>> jhbuild maintainers have been ignoring the problem. They still are: >>> https://gitlab.gnome.org/GNOME/jhbuild/-/issues/291. Anyway, it looks like >>> Mingw64 has provided a workaround called ming-w64-python-distutils-extra >>> (https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-python-distutils-extra). >>> You can install it from a Mingw32 terminal window by saying >>> pacman -S mingw-w64-i686-python-distutils-extra >>> Regards, >>> John Ralls >>> >>>> >>>> On Nov 7, 2024, at 08:47, Kevin Sanders <kbsand...@hotmail.com> wrote: >>>> Hi John, my name is Kevin Sanders. >>>> I'm a new user of GnuCash and I'm trying to get setup to do some >>>> development work with GnuCash on Windows. >>>> I'm sorry to bother you but I've run into an issue that I'm not sure how >>>> to resolve. >>>> I have ran the setup-mingw.ps1 PowerShell script. >>>> I have launched a MSYS2 MingGW 32-bit terminal window and cd into the >>>> repository directory. >>>> I run jhbuild and it fails with ModuleNotFoundError: No module named >>>> 'distutils'. >>>> I believe this to be a python issue, but I'm not really sure. >>>> Python version is showing as 3.11.10. >>>> Any help would be greatly appreciated. >>>> -Kevin >>>> Console Output: >>>> Kevin@Kevin-PC MINGW32 /c/gcdev64/src/gnucash-on-windows.git >>>> $ TARGET=gnucash-stable jhbuild -f jhbuildrc build >>>> Traceback (most recent call last): >>>> File "/usr/bin/jhbuild", line 22, in <module> >>>> import jhbuild.main >>>> File "/c/gcdev64/src/jhbuild.git/jhbuild/main.py", line 26, in <module> >>>> import jhbuild.config >>>> File "/c/gcdev64/src/jhbuild.git/jhbuild/config.py", line 31, in <module> >>>> from jhbuild.environment import setup_env, setup_env_defaults, addpath >>>> File "/c/gcdev64/src/jhbuild.git/jhbuild/environment.py", line 24, in >>>> <module> >>>> from distutils.sysconfig import get_python_lib >>>> ModuleNotFoundError: No module named 'distutils' >>>> Kevin@Kevin-PC MINGW32 /c/gcdev64/src/gnucash-on-windows.git >>>> $ python --version >>>> Python 3.11.10 >>> >>> _______________________________________________ >>> gnucash-devel mailing list >>> gnucash-devel@gnucash.org >>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel >> >> _______________________________________________ >> gnucash-devel mailing list >> gnucash-devel@gnucash.org >> https://lists.gnucash.org/mailman/listinfo/gnucash-devel _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel