Re: [GNC-dev] I need help building GnuCash on master

2020-05-30 Thread John Ralls



> On May 30, 2020, at 4:45 AM, Christian Gruber  
> wrote:
> 
> 
> Am 29.05.20 um 01:49 schrieb Frank H. Ellenberger:
>> Christian,
>> 
>> did you clean ~/.cache/guile ? That is the place, where the precompiled
>> .go bytecode from the .scm files is stored.
> Thanks for this advise, I haven't tried this yet. Unfortunately it didn't 
> help.
>> 
>> Frank
>> 
>> Am 28.05.20 um 17:42 schrieb Christian Gruber:
>>> Am 28.05.20 um 12:24 schrieb Frank H. Ellenberger:
 Hi,
 
 Am 28.05.20 um 08:13 schrieb Christian Gruber:
> I have to search for left *.go files, right? There are a lot in
> /usr/lib/x86_64-linux-gnu/guile/2.2/ccache. Can I remove the complete
> directory without hesitation?
 The easier way is to uninstall guile-modules-2_2 to get rid of them. ;-)
 They are part of that package.
>>> Ok, I checked that with inverse file search ("apt-file search"). On my
>>> Ubuntu system these files belong to package guile-2.2-libs. And the
>>> *.scm files in /usr/share/guile/2.2 belong to that package as well. But
>>> after uninstalling guile-2.2-libs CMake complains, when building GnuCash:
>>> 
>>> CMake Error at CMakeLists.txt:311 (message):
>>>   Neither guile 2.2 nor guile 2.0 were found GnuCash can't run without
>>> one of
>>>   them.  Ensure that one is installed and can be found with pkg-config.
>>> 
>>> Therefore I installed guile-2.2-libs again. And the build error is the
>>> same again as at the beginning:
>>> 
>>> ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
>>> no code for module (gnucash core-utils)
>>> 
>>> Is this maybe a problem of a missing CMake dependency?
>>> 
>>> Another idea, I updated my Ubuntu system from 19.10 Eoan Ermine to 20.04
>>> Focal Fossa a few days ago. Could this be a reason?
> 
> Can anybody please try to reproduce the build process on Linux from the 
> current master branch in a completely clean build directory and with a clean 
> guile cache (~/.cache/guile)?
> 
> I did the following:
> 
> cd ~/gnucash/build
> rm rf *
> cmake -DCMAKE_BUILD_TYPE=Debug ~/gnucash/src
> make all
> 
> Can anybody tell me more precisely, what this error message actually means? 
> Does "no code for module (gnucash core-utils)" mean, that something is not 
> built yet? If yes, what is not built? Target "gnc-core-utils" is already 
> built.

Christian,

Sorry, I gave you bad advice Wednesday and that damaged your guile installation.

"no code for module (gnucash core-utils)" means that guile wants to load 
/lib/guile/2.2/site-ccache/gnucash/core-utils.go and it's either not 
there, is empty, or can't find lib/libgnc-core-utils.so, the library on which 
it depends... *unless* it finds an old core-utils.go that wants to link to an 
installed libgnc-core-utils.so or if it's from maint libgncmod-core-utils.go. 
It searches system directories (i.e. /usr/lib*) first which is why you can't 
develop gnucash on a Linux system with an installed gnucash.

I've just finished clean builds of master on Ubuntu 18.04 and freshly updated 
Arch Linux and Debian Unstable, the last of which I'd think would be pretty 
close to your Ubuntu 20.04. Note that we run continuous integration tests after 
every push, you can see the results at 
https://travis-ci.org/github/Gnucash/gnucash/builds/. Those run on dockers with 
Ubuntu 18.04 and Arch Linux that are spun up and configured from scratch for 
each test run.

Regards,
John Ralls

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] I need help building GnuCash on master

2020-05-30 Thread Geert Janssens
Op zaterdag 30 mei 2020 13:45:08 CEST schreef Christian Gruber:
> Am 29.05.20 um 01:49 schrieb Frank H. Ellenberger:
> > Christian,
> > 
> > did you clean ~/.cache/guile ? That is the place, where the precompiled
> > .go bytecode from the .scm files is stored.
> 
> Thanks for this advise, I haven't tried this yet. Unfortunately it
> didn't help.
> 
> > Frank
> > 
> > Am 28.05.20 um 17:42 schrieb Christian Gruber:
> >> Am 28.05.20 um 12:24 schrieb Frank H. Ellenberger:
> >>> Hi,
> >>> 
> >>> Am 28.05.20 um 08:13 schrieb Christian Gruber:
>  I have to search for left *.go files, right? There are a lot in
>  /usr/lib/x86_64-linux-gnu/guile/2.2/ccache. Can I remove the complete
>  directory without hesitation?
> >>> 
> >>> The easier way is to uninstall guile-modules-2_2 to get rid of them. ;-)
> >>> They are part of that package.
> >> 
> >> Ok, I checked that with inverse file search ("apt-file search"). On my
> >> Ubuntu system these files belong to package guile-2.2-libs. And the
> >> *.scm files in /usr/share/guile/2.2 belong to that package as well. But
> >> after uninstalling guile-2.2-libs CMake complains, when building GnuCash:
> >> 
> >> CMake Error at CMakeLists.txt:311 (message):
> >>Neither guile 2.2 nor guile 2.0 were found GnuCash can't run without
> >> 
> >> one of
> >> 
> >>them.  Ensure that one is installed and can be found with pkg-config.
> >> 
> >> Therefore I installed guile-2.2-libs again. And the build error is the
> >> same again as at the beginning:
> >> 
> >> ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
> >> no code for module (gnucash core-utils)
> >> 
> >> Is this maybe a problem of a missing CMake dependency?
> >> 
> >> Another idea, I updated my Ubuntu system from 19.10 Eoan Ermine to 20.04
> >> Focal Fossa a few days ago. Could this be a reason?
> 
> Can anybody please try to reproduce the build process on Linux from the
> current master branch in a completely clean build directory and with a
> clean guile cache (~/.cache/guile)?
> 
> I did the following:
> 
> cd ~/gnucash/build
> rm rf *
> cmake -DCMAKE_BUILD_TYPE=Debug ~/gnucash/src
> make all
> 
> Can anybody tell me more precisely, what this error message actually
> means? Does "no code for module (gnucash core-utils)" mean, that
> something is not built yet? If yes, what is not built? Target
> "gnc-core-utils" is already built.

It can mean something isn't built yet, but more often than not it means guile 
finds an 
older version of any of the libgnc*.so files somewhere on your LD_LIBRARY_PATH.

Do you have a version of gnucash installed on the same system you are building ?

Geert
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] I need help building GnuCash on master

2020-05-30 Thread Frank H. Ellenberger
Hi,

I watched a similar issue yesterday, wich each call of ninja/make I got
a bit further. So I suspect the dependencies between the guile modules
are not properly declared leading to such errors, when building parallel.

After several trials (and probably other things) suddenly it built again
without errors.

Regards
Frank

Am 30.05.20 um 14:45 schrieb Mark:
> FYI, I just did a pull from git and tried to build maint and master as you
> suggested. Cleaned the guile cache first, clean build folder, cmake Debug
> build, etc.
> *Maint* built without any problems.
> *Master* got to about 32%, then failed, like so:
> ...
> Scanning dependencies of target gncmod-backend-dbi
> [ 32%] Building CXX object
> libgnucash/backend/dbi/CMakeFiles/gncmod-backend-dbi.dir/gnc-backend-dbi.cpp.o
> [ 32%] Building CXX object
> libgnucash/backend/dbi/CMakeFiles/gncmod-backend-dbi.dir/gnc-dbisqlresult.cpp.o
> [ 32%] Building CXX object
> libgnucash/backend/dbi/CMakeFiles/gncmod-backend-dbi.dir/gnc-dbisqlconnection.cpp.o
> [ 32%] Linking CXX shared library
> ../../../lib/gnucash/libgncmod-backend-dbi.so
> [ 32%] Built target gncmod-backend-dbi
> Scanning dependencies of target scm-engine-0
> [ 32%] Generating
> ../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/commodity-table.go
> wrote
> `/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/commodity-table.go'
> [ 32%] Generating
> ../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/gnc-numeric.go
> wrote
> `/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/gnc-numeric.go'
> [ 32%] Generating
> ../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/business-core.go
> wrote
> `/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/business-core.go'
> [ 32%] Built target scm-engine-0
> Scanning dependencies of target scm-engine-1
> [ 32%] Generating
> ../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine.go
> wrote
> `/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine.go'
> [ 32%] Built target scm-engine-1
> Scanning dependencies of target scm-engine-2
> [ 32%] Generating
> ../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/utilities.go
> Backtrace:
> In system/base/target.scm:
>   59: 19 [with-target "x86_64-pc-linux-gnu" ...]
> In system/base/compile.scm:
>  152: 18 [compile-file
> "/newdata/dev/git/clone/gnucash/bindings/guile/utilities.scm" ...]
>   43: 17 [call-once # system/base/compile.scm:56:5 ()>]
> In ice-9/boot-9.scm:
>  174: 16 [with-throw-handler #t ...]
> In system/base/compile.scm:
>   59: 15 [#]
>  155: 14 [#
> #]
>  218: 13 [read-and-compile # #:from ...]
>  234: 12 [lp (# #) # #]
>  182: 11 [lp (#) (use-modules #) ...]
> In ice-9/boot-9.scm:
> 2404: 10 [save-module-excursion # language/scheme/compile-tree-il.scm:29:3 ()>]
> In language/scheme/compile-tree-il.scm:
>   31: 9 [# language/scheme/compile-tree-il.scm:29:3 ()>]
> In ice-9/psyntax.scm:
> 1106: 8 [expand-top-sequence ((use-modules (gnucash core-utils))) () ...]
>  989: 7 [scan ((use-modules (gnucash core-utils))) () ...]
>  279: 6 [scan ((# #) #(syntax-object *unspecified* # #)) () (()) ...]
> In ice-9/boot-9.scm:
> 3589: 5 [process-use-modules (((gnucash core-utils)))]
>  705: 4 [map # (mif-args)> ((#))]
> 3590: 3 [#
> (#)]
> 2870: 2 [resolve-interface (gnucash core-utils) #:select ...]
> In unknown file:
>?: 1 [scm-error misc-error #f ...]
> In ice-9/boot-9.scm:
>  109: 0 [# args)> misc-error ...]
> 
> ice-9/boot-9.scm:109:20: In procedure # ice-9/boot-9.scm:100:6 (thrown-k . args)>:
> ice-9/boot-9.scm:109:20: no code for module (gnucash core-utils)
> bindings/guile/CMakeFiles/scm-engine-2.dir/build.make:64: recipe for target
> 'lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/utilities.go' failed
> make[2]: ***
> [lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/utilities.go] Error 1
> CMakeFiles/Makefile2:14384: recipe for target
> 'bindings/guile/CMakeFiles/scm-engine-2.dir/all' failed
> make[1]: *** [bindings/guile/CMakeFiles/scm-engine-2.dir/all] Error 2
> Makefile:162: recipe for target 'all' failed
> make: *** [all] Error 2
> I am on Linux Mint 19.3
> cheers,
> 
> *Mark Sattolo*
> *episte...@gmail.com *
> *(613) 447-5385*
> 
> 
> 
> On Sat, May 30, 2020 at 7:53 AM Christian Gruber 
> wrote:
> 
>>
>> Am 27.05.20 um 02:49 schrieb David Cousens:
>>> Christian
>>>
>>>  From memory I think that error occurs when you have a problem with the
>> cmake
>>> relative addressing from the build directory to the gnucash source
>> directory
>>> although that should be the same no matter whether you have the master or
>>> maint checked out with git.
>> Thanks for the tip, David. But the build error really occurs only when
>> building from master branch, not from maint branch.
>>>
>>> David Cousens
>>>
>>>
>>>
>>> -
>>>

Re: [GNC-dev] I need help building GnuCash on master

2020-05-30 Thread Mark
FYI, I just did a pull from git and tried to build maint and master as you
suggested. Cleaned the guile cache first, clean build folder, cmake Debug
build, etc.
*Maint* built without any problems.
*Master* got to about 32%, then failed, like so:
...
Scanning dependencies of target gncmod-backend-dbi
[ 32%] Building CXX object
libgnucash/backend/dbi/CMakeFiles/gncmod-backend-dbi.dir/gnc-backend-dbi.cpp.o
[ 32%] Building CXX object
libgnucash/backend/dbi/CMakeFiles/gncmod-backend-dbi.dir/gnc-dbisqlresult.cpp.o
[ 32%] Building CXX object
libgnucash/backend/dbi/CMakeFiles/gncmod-backend-dbi.dir/gnc-dbisqlconnection.cpp.o
[ 32%] Linking CXX shared library
../../../lib/gnucash/libgncmod-backend-dbi.so
[ 32%] Built target gncmod-backend-dbi
Scanning dependencies of target scm-engine-0
[ 32%] Generating
../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/commodity-table.go
wrote
`/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/commodity-table.go'
[ 32%] Generating
../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/gnc-numeric.go
wrote
`/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/gnc-numeric.go'
[ 32%] Generating
../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/business-core.go
wrote
`/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine/business-core.go'
[ 32%] Built target scm-engine-0
Scanning dependencies of target scm-engine-1
[ 32%] Generating
../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine.go
wrote
`/newdata/dev/git/clone/gnucash/build_make_2020-05-30/lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/engine.go'
[ 32%] Built target scm-engine-1
Scanning dependencies of target scm-engine-2
[ 32%] Generating
../../lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/utilities.go
Backtrace:
In system/base/target.scm:
  59: 19 [with-target "x86_64-pc-linux-gnu" ...]
In system/base/compile.scm:
 152: 18 [compile-file
"/newdata/dev/git/clone/gnucash/bindings/guile/utilities.scm" ...]
  43: 17 [call-once #]
In ice-9/boot-9.scm:
 174: 16 [with-throw-handler #t ...]
In system/base/compile.scm:
  59: 15 [#]
 155: 14 [#
#]
 218: 13 [read-and-compile # #:from ...]
 234: 12 [lp (# #) # #]
 182: 11 [lp (#) (use-modules #) ...]
In ice-9/boot-9.scm:
2404: 10 [save-module-excursion #]
In language/scheme/compile-tree-il.scm:
  31: 9 [#]
In ice-9/psyntax.scm:
1106: 8 [expand-top-sequence ((use-modules (gnucash core-utils))) () ...]
 989: 7 [scan ((use-modules (gnucash core-utils))) () ...]
 279: 6 [scan ((# #) #(syntax-object *unspecified* # #)) () (()) ...]
In ice-9/boot-9.scm:
3589: 5 [process-use-modules (((gnucash core-utils)))]
 705: 4 [map # ((#))]
3590: 3 [#
(#)]
2870: 2 [resolve-interface (gnucash core-utils) #:select ...]
In unknown file:
   ?: 1 [scm-error misc-error #f ...]
In ice-9/boot-9.scm:
 109: 0 [# misc-error ...]

ice-9/boot-9.scm:109:20: In procedure #:
ice-9/boot-9.scm:109:20: no code for module (gnucash core-utils)
bindings/guile/CMakeFiles/scm-engine-2.dir/build.make:64: recipe for target
'lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/utilities.go' failed
make[2]: ***
[lib/x86_64-linux-gnu/guile/2.0/site-ccache/gnucash/utilities.go] Error 1
CMakeFiles/Makefile2:14384: recipe for target
'bindings/guile/CMakeFiles/scm-engine-2.dir/all' failed
make[1]: *** [bindings/guile/CMakeFiles/scm-engine-2.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *** [all] Error 2
I am on Linux Mint 19.3
cheers,

*Mark Sattolo*
*episte...@gmail.com *
*(613) 447-5385*



On Sat, May 30, 2020 at 7:53 AM Christian Gruber 
wrote:

>
> Am 27.05.20 um 02:49 schrieb David Cousens:
> > Christian
> >
> >  From memory I think that error occurs when you have a problem with the
> cmake
> > relative addressing from the build directory to the gnucash source
> directory
> > although that should be the same no matter whether you have the master or
> > maint checked out with git.
> Thanks for the tip, David. But the build error really occurs only when
> building from master branch, not from maint branch.
> >
> > David Cousens
> >
> >
> >
> > -
> > David Cousens
> > --
> > Sent from:
> http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html
> > ___
> > 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


Re: [GNC-dev] Is the import match map still required?

2020-05-30 Thread Christian Gruber

David,

thanks for your detailed explanations. Implementing a procedure, which 
could be run as needed and which updates the frequency table according 
to the current transactions for an account, seems to be a meaningful 
first step. This could be used to measure performance next. Then it 
could be decided, if this procedure can also run on the fly.


I also thought more about the user's part of interaction with the 
frequency table. The current situation seems to be a bit like "hacking" 
the frequency table to achieve better matching results. You can remove 
some entries, which seem to be wrong or seem to corrupt the matching 
results or whatever. If the user would not change the frequency table 
directly, but could instead set some personal preferences on how the 
data is used, this would solve the problem, that these preferences are 
not influenced by running the procedure updating the frequency table. 
And by regular updates of the frequency table, wrong or outdated entries 
are removed reliably and the data is up-to-date. The user could for 
example exclude some tokens from the bayesian algorithm, which are not 
relevant for him.


Christian


Am 25.05.20 um 01:13 schrieb David Cousens:

Christian,

I haven't experimented to know whether constructing the frequency table on
the fly creates a performance bottleneck or not but am guessing the original
developer thought it might. It would require a detailed look at the code
involved but my suspicion would be that the performance penalty is likely to
be significant.

My comment about bloat is that at present data is only maintained for
accounts you specifically import data into and if that data is stored. If it
isn't then bloat doesn't apply obviously. Any sort of generalized procedure
could allow selection of accounts for which Bayesian matching is required,
i.e. those for which importing is used to input data. My initial thought was
that you would run it for all accounts but it is really only necessary for
the specific subset of accounts into which you import data. It would then
require the ability to run the procedure on an account if it occurred in
import data but didn't have existing account matching data. If it is on the
fly then no problem it can run whenever a new account being imported into
appears in the imported data. The most common use case is probably importing
data to one specific account but GnuCash is also able to specify the account
being imported into in the import data itself.  I haven't looked at how the
frequency table is currently stored in memory but I am guessing it is
constructed in memory when the data file is read in.

The up-to-date aspect is one advantage and if the current procedure  is
changed to improve performance then that is not hampered by the presence of
historical data which would be updated automatically when the procedure is
run. If the table is stored as it is at present and a procedure was
available to trawl the current transactions for an account then it can be
kept up to date by running that procedure periodically. the use of data from
manually entered transactions would then be incorporated whether on the fly
or just run as required.

Having a standalone procedure to trawl an existing file to update the stored
data for an account  would allow exploration of whether this is likely to be
a significant performance hit if it was run on the fly so that could perhaps
be a first step.  The core part of the code to store the data has to exist
in the matcher code already and it will be a case of wrapping this in a loop
through the transactions existing in an account and setting up the gui
interface to select accounts to run on.

The problem with pruning the data is that GnuCash has no way of knowing
apriori which tokens are most relevant. I would think that date information
is not really relevant and amount/value information does little in most
cases to identify a transfer account.

The main difficulty I have  with transfer account assignment is that some
regular transactions use a unique code in the description each time they
occur with no separate unique identifier of the transaction source. My wife
and I both have separte gym membership subscriptions and the transaction
descriptions neither identify the gym or for which of us  the transaction
applies. Options are to persuade the source to include specific data or only
use a single account to record both but I like to track both our individual
and joint expenses

Some regular transactions also get matched to previous payments in the
transaction matching within the date range window where the amounts and
descriptions are usually identical. The current 42 day window captures both
fortnightly and monthly regular income transactions for example.  This only
affects a few transactions each month and I don't have huge numbers of
transactions to process now that I have retired but that may not be the case
for other users. Maybe making the date range window adjustable rather 

Re: [GNC-dev] I need help building GnuCash on master

2020-05-30 Thread Christian Gruber



Am 27.05.20 um 02:49 schrieb David Cousens:

Christian

 From memory I think that error occurs when you have a problem with the cmake
relative addressing from the build directory to the gnucash source directory
although that should be the same no matter whether you have the master or
maint checked out with git.
Thanks for the tip, David. But the build error really occurs only when 
building from master branch, not from maint branch.


David Cousens



-
David Cousens
--
Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html
___
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


Re: [GNC-dev] I need help building GnuCash on master

2020-05-30 Thread Christian Gruber

Am 29.05.20 um 23:03 schrieb Geert Janssens:


Op donderdag 28 mei 2020 08:13:14 CEST schreef Christian Gruber:

> Am 28.05.20 um 06:31 schrieb John Ralls:

> >> On May 27, 2020, at 2:15 PM, Christian Gruber

> >>  wrote:>>

> >> Am 27.05.20 um 22:16 schrieb John Ralls:

>  On May 27, 2020, at 1:09 PM, Christian Gruber

>   wrote:

>  Am 27.05.20 um 00:28 schrieb John Ralls:

> >> On May 26, 2020, at 1:34 PM, Christian Gruber

> >>  wrote:

> >>

> >> Hi,

> >>

> >> I tried to build GnuCash from master (currently fde6be6e0) 
for the


> >> first time. Before I always built from maint.

> >>

> >> I get a strange build error:

> >>

> >> Scanning dependencies of target scm-engine-2

> >> [ 30%] Generating

> >> 
../../lib/x86_64-linux-gnu/guile/2.2/site-ccache/gnucash/utilities.g


> >> o Backtrace:

> >>

> >> In scripts/compile.scm:

> >> 264:26 19 (_ _)

> >>

> >> In system/base/target.scm:

> >> 57:6 18 (with-target _ _)

> >>

> >> In system/base/compile.scm:

> >> 152:6 17 (compile-file _ #:output-file _ #:from _ #:to _ #:env _

> >> …)

> >>

> >> 43:4 16 (call-once _)

> >>

> >> In ice-9/boot-9.scm:

> >> 841:4 15 (with-throw-handler _ _ _)

> >>

> >> In system/base/compile.scm:

> >> 59:11 14 (_)

> >>

> >> 155:11 13 (_ #)

> >> 235:18 12 (read-and-compile # #:from _ #

> >> …)

> >> 183:32 11 (compile-fold (#)

> >> …)

> >>

> >> In ice-9/boot-9.scm:

> >> 2312:4 10 (save-module-excursion # >> lang…>)

> >>

> >> In language/scheme/compile-tree-il.scm:

> >> 31:15 9 (_)

> >>

> >> In ice-9/psyntax.scm:

> >> 1262:36 8 (expand-top-sequence ((use-modules (gnucash #))) _ _ #f

> >> …)

> >> 1209:24 7 (parse _ (("placeholder" placeholder)) ((top) #(# # …))

> >> …)

> >>

> >> 285:10 6 (parse _ (("placeholder" placeholder)) (()) _ c&e (# #)

> >> #)

> >>

> >> In ice-9/boot-9.scm:

> >> 3377:20 5 (process-use-modules _)

> >>

> >> 222:17 4 (map1 (((gnucash core-utils

> >>

> >> 3378:31 3 (_ ((gnucash core-utils)))

> >>

> >> 2803:6 2 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _

> >> …)

> >>

> >> In unknown file:

> >> 1 (scm-error misc-error #f "~A ~S" ("no code for modu…"

> >> …) …)

> >>

> >> In ice-9/boot-9.scm:

> >> 752:25 0 (dispatch-exception _ _ _)

> >>

> >> ice-9/boot-9.scm:752:25: In procedure dispatch-exception:

> >> no code for module (gnucash core-utils)

> >>

> >>

> >>

> >> I get the same build error even when using earlier commits from

> >> master, tag 3.902 for instance.

> >>

> >> Do I do something wrong?

> >

> > Christian,

> >

> > Did you remember to uninstall GnuCash and build in a 
completely clean


> > (as in rm -rf *) build directory?

>  Yes, I do remember. And I already did uninstall GnuCash and 
built in a


>  completely clean build directory. Nevertheless I still get this 
build


>  error. Maybe the uninstall process was not complete and there 
are some


>  files left.

> 

>  I have to search for left *.go files, right? There are a lot in

>  /usr/lib/x86_64-linux-gnu/guile/2.2/ccache. Can I remove the 
complete


>  directory without hesitation?>>>

> >>> Yes, but if they're in /usr that should mean that you have at 
least the


> >>> remnants of a package manager installation. You should probably 
check


> >>> that the package manager thinks that you've uninstalled gnucash.>>

> >> I checked, that the package manager does not expect an existing 
GnuCash


> >> installation and removed the complete directory

> >> /usr/lib/x86_64-linux-gnu/guile/2.2/ccache. But it seems, that 
this was


> >> too much. Now I see a lot of the following warnings for different 
*.scm


> >> files:

> >>

> >> ;;; WARNING: compilation of

> >> /usr/share/guile/2.2/language/bytecode/spec.scm failed: ;;; no such

> >> language bytecode

> >

> > Another directory to nuke.

>

> I should delete *.scm files?

I'm not too sure about that. Those look like files owned by guile 
itself. I think you did indeed remove too much.


Yes, inverse file search ("apt-file search") showed, that these files 
belong to package guile-2.2-lib.


You should probably have limited yourself to files in a gnucash 
subdirectory of /usr/lib/x86_64-linux-gnu/guile/2.2/ccache


If you remove ccache files that are part of the guile package itself 
it may not be able to properly recompile those missing files. We see 
similar things in our flatpak package on some platforms.


Yes, inverse file search showed, that also files in 
/usr/lib/x86_64-linux-gnu/guile/2.2/ccache belong to package guile-2.2-lib.


Best is probably to re-install your guile or guile-dev packages.

I did this and all the

Re: [GNC-dev] I need help building GnuCash on master

2020-05-30 Thread Christian Gruber


Am 29.05.20 um 01:49 schrieb Frank H. Ellenberger:

Christian,

did you clean ~/.cache/guile ? That is the place, where the precompiled
.go bytecode from the .scm files is stored.
Thanks for this advise, I haven't tried this yet. Unfortunately it 
didn't help.


Frank

Am 28.05.20 um 17:42 schrieb Christian Gruber:

Am 28.05.20 um 12:24 schrieb Frank H. Ellenberger:

Hi,

Am 28.05.20 um 08:13 schrieb Christian Gruber:

I have to search for left *.go files, right? There are a lot in
/usr/lib/x86_64-linux-gnu/guile/2.2/ccache. Can I remove the complete
directory without hesitation?

The easier way is to uninstall guile-modules-2_2 to get rid of them. ;-)
They are part of that package.

Ok, I checked that with inverse file search ("apt-file search"). On my
Ubuntu system these files belong to package guile-2.2-libs. And the
*.scm files in /usr/share/guile/2.2 belong to that package as well. But
after uninstalling guile-2.2-libs CMake complains, when building GnuCash:

CMake Error at CMakeLists.txt:311 (message):
   Neither guile 2.2 nor guile 2.0 were found GnuCash can't run without
one of
   them.  Ensure that one is installed and can be found with pkg-config.

Therefore I installed guile-2.2-libs again. And the build error is the
same again as at the beginning:

ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
no code for module (gnucash core-utils)

Is this maybe a problem of a missing CMake dependency?

Another idea, I updated my Ubuntu system from 19.10 Eoan Ermine to 20.04
Focal Fossa a few days ago. Could this be a reason?


Can anybody please try to reproduce the build process on Linux from the 
current master branch in a completely clean build directory and with a 
clean guile cache (~/.cache/guile)?


I did the following:

cd ~/gnucash/build
rm rf *
cmake -DCMAKE_BUILD_TYPE=Debug ~/gnucash/src
make all

Can anybody tell me more precisely, what this error message actually 
means? Does "no code for module (gnucash core-utils)" mean, that 
something is not built yet? If yes, what is not built? Target 
"gnc-core-utils" is already built.


Regards,
Christian

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] 'g_signal_handler_disconnect: assertion' on master

2020-05-30 Thread Robert Fewell
Hi,

I built master in a different VM and ran Gnucash from there that happened
to have and open Invoice and when I closed it I got the following...

* 11:52:31 ERROR  g_signal_handler_disconnect: assertion
'G_TYPE_CHECK_INSTANCE (instance)' failed

I tracked this down to a difference in the way the sheet is closed between
registers and invoices. The gnc-date-cell-destroy is being called before
the gnc-item_edit_destroying for invoices and so when the item_edit tries
to do the signal disconnect on the popup_item it no longer exists.

It can be fixed by moving gtk_widget_destroy(widget);, line 617 in
dialog-invoice.c to above the gnc_entry_ledger_destroy (iw->ledger);

Just not sure if this causes a different problem, all seems to work but as
I do not use invoices would like a second opinion.

Regards,

Bob
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel