[GNC-dev] How to get Report Development Environment Working in Windows

john jralls at ceridwen.us
Fri Sep 3 23:22:52 EDT 2021

I wasn't sure about Guile's understanding of MSDOS-style paths. Try converting them to Cygwin style, e.g. set GUILE_LOAD_PATH="/c/Program Files (x86)/gnucash/share/guile/2.2:/c/Program Files (x86)/gnucash/share/guile/site/2.2". You might need to escape the spaces as well, e.g. Program\ Files\ \(x86\).

John Ralls

> On Sep 3, 2021, at 6:32 PM, flywire <flywire0 at gmail.com> wrote:
> John, presumably you mentioned a guile instance because it's more efficient than the technique I asked about to reload reports without restarting GnuCash. That doesn't bring up a Win10 guile instance:
> C:\Users\User\AppData\Roaming\GnuCash>type guile-env.bat
> @ echo off
> REM https://lists.gnucash.org/pipermail/gnucash-devel/2021-September/045942.html <https://lists.gnucash.org/pipermail/gnucash-devel/2021-September/045942.html>
> set GUILE_LOAD_PATH="c:\Program Files (x86)\gnucash\share\guile\2.2;c:\Program Files (x86)\gnucash\share\guile\site\2.2"
> set GUILE__COMPILED_LOAD_PATH="c:\Program Files (x86)\gnucash\lib\guile\2.2\ccache;c:\Program Files (x86)\gnucash\lib\guile\2.2\site-ccache"
> path = "c:\Program Files (x86)\gnucash\bin";%PATH%
> C:\Users\User\AppData\Roaming\GnuCash>guile-env
> C:\Users\User\AppData\Roaming\GnuCash>guile
> Uncaught exception:
> Throw to key misc-error with args ("primitive-load-path" "Unable to find file ~S in load path" ("ice-9/boot-9") #f)Cannot exit gracefully when init is in progress; aborting.
> C:\Users\User\AppData\Roaming\GnuCash>dir /b
> accelerator-map
> books
> checks
> config-user.scm
> custom_import.scm
> custom_import_renderer.scm
> document-renderer.scm
> expressions-2.0
> gnucash-4.6
> gnucash-4.6.tar
> guile-env.bat
> my-world.scm
> prototype-loader.scm
> prototype-renderer.scm
> prototype.scm
> prototype_loader.scm
> saved-reports-2.8
> saved-reports-2.8-backup
> stylesheets-2.0
> test00.scm
> transaction.scm
> translog
> trep-engine.scm
> On Fri, Sep 3, 2021 at 10:48 AM John Ralls <jralls at ceridwen.us <mailto:jralls at ceridwen.us>> wrote:
> > On Sep 2, 2021, at 4:55 PM, flywire <flywire0 at gmail.com <mailto:flywire0 at gmail.com>> wrote:
> > 
> > I'd like to use
> > https://wiki.gnucash.org/wiki/Custom_Reports#Development_Environment <https://wiki.gnucash.org/wiki/Custom_Reports#Development_Environment> in
> > Win10. The Technique to reload reports without restarting GnuCash is not
> > working and I think the main problem is not following:
> > 
> >> Finally, you should also extract a GnuCash source tar ball in
> > ~/GnuCash/CustomReport/ to have access to the Scheme files referenced in
> > this page.
> > 
> > Does this mean extract the contents of gnucash-4.6.setup.exe
> > under %USERPROFILE%/GnuCash/CustomReport? Which files are actually needed
> > where (required path of one file as an example would be good)?
> Not exactly. A source tarball is an archive of the sources made with the Unix `tar` program; we distribute two variants, gnucash-4.6.tar.bz2 and gnucash-4.6.tar.gz; the trailing extensions indicate the compression method used. 
> It looks like much of that page dates from GnuCash 2.6 that used an earlier version of Guile than we use now. You don't really need that though. What you need is to set up two environment variables, $Env:GUILE_LOAD_PATH and $Env:GUILE_COMPILED_LOAD_PATH:
> (Assuming Powershell)
> $Env:GUILE_LOAD_PATH="c:\Program Files (x86)\gnucash\share\guile\2.2;c:\Program Files (x86)\gnucash\share\guile\site\2.2"
> $Env:GUILE__COMPILED_LOAD_PATH="c:\Program Files (x86)\gnucash\lib\guile\2.2\ccache;c:\Program Files (x86)\gnucash\lib\guile\2.2\site-ccache"
> Also adjust your path to include "c:\Program Files (x86)\gnucash\bin"
> With that setup a guile instance run from that shell should be able to find all of the modules it needs. Note that none of this is needed for GnuCash to execute your config-user.scm as it sets up the paths for itself.
> Regards,
> John Ralls

More information about the gnucash-devel mailing list