[GNC-dev] Build error with scm-engine on current master

Geert Janssens geert.gnucash at kobaltwit.be
Thu Sep 12 03:47:43 EDT 2019

Hi Christian,

Thanks to your detailed description I can now reproduce the problem when 
building master with "make" rather than "ninja".

Turns out there's a hidden circular dependency between engine.scm and engine-
utilities.scm via the call to
(gnc:module-begin-syntax (gnc:module-load "gnucash/engine" 0))

I have a fix ready for this particular case, but there are more of these so 
I'm still working through the others.



Op donderdag 12 september 2019 00:46:13 CEST schreef Christian Gruber:
> This thread is related to the build issue I encountered when finally
> building PR #574 <https://github.com/Gnucash/gnucash/pull/574> locally.
> Invoking "make all" on current master lead to the following build error
> when compiling libgnucash/engine/engine-utilities.scm:
> Backtrace:            1 (primitive-load-path
> "gnucash/engine/gnc-numeric") In ice-9/boot-9.scm:    752:25  0
> (dispatch-exception _ _ _) ice-9/boot-9.scm:752:25: In procedure
> dispatch-exception: In procedure primitive-load-path: Unable to find
> file "gnucash/engine/gnc-numeric" in load path
> File libgnucash/engine/engine-utilities.scm is built with target
> scm-engine-1, therefore the same build error can be reproduced by
> invoking "make scm-engine-1" or "make scm-engine" as well.
> According to PR #574 <https://github.com/Gnucash/gnucash/pull/574>  I
> can preclude, that this is due to reusing a maint build directory, since
> I built in a clean and fresh build dir.
> Next I tried to build again after moving directories
> /usr/lib/x86_64-linux-gnu/gnucash/gnucash and files
> /usr/lib/x86_64-linux-gnu/gnucash/libgnc*.so.
> After that I uninstalled my GnuCash 3.5, which was installed before from
> distros package manager.
> Finally I searched my whole system for gnucash directories and removed
> them in /usr/local/... where I previously installed GnuCash built from
> source repo.
> Everytime I built in a clean and fresh build dir, but the build error
> was always the same.
> Finally I further investigated sources and found a maybe important
> change in file libgnucash/engine/engine.scm made in commit 53f59f7.
> Therefore I tried two builds at the end, one with commit 53f59f7 and the
> second with commit cb50f7a, which is one commit before 53f59f7. The
> result was, that commit 53f59f7 leads to the mentioned build error, but
> commit cb50f7a could successfully be built.
> Any ideas?
> Christian
> _______________________________________________
> gnucash-devel mailing list
> gnucash-devel at gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel

More information about the gnucash-devel mailing list