[GNC-dev] Trouble with gsettings in GC 4.9

bugzilla bugzilla at orcon.net.nz
Mon Jan 3 03:55:02 EST 2022


Hi everyone,

first of all  a happy new year to you all.

I tried to compile GC 4.9 on Linux Mint 20 ulyana following the 
recommendations below. The build and installation process worked fine. 
However, when I run the /opt/gnucash/bin/gnucash command, I get heaps of 
error messages that follow the following pattern.

To find the last stable version, please refer to https://www.gnucash.org/
;;; WARNING: loading compiled file 
/opt/gnucash/lib/x86_64-linux-gnu/guile/2.2/site-ccache/gnucash/utilities.go 
failed:
;;; ERROR: In procedure make_objcode_from_file: bad header on object 
file: "\x7fELF\x02\x01\x01ÿ\x00\x00\x00\x00\x00\x00\x00\x00"
;;; WARNING: loading compiled file 
/opt/gnucash/lib/x86_64-linux-gnu/guile/2.2/site-ccache/gnucash/core-utils.go 
failed:
;;; ERROR: In procedure make_objcode_from_file: bad header on object 
file: "\x7fELF\x02\x01\x01ÿ\x00\x00\x00\x00\x00\x00\x00\x00"
;;; WARNING: loading compiled file 
/opt/gnucash/lib/x86_64-linux-gnu/guile/2.2/site-ccache/gnucash/engine.go 
failed:
;;; ERROR: In procedure make_objcode_from_file: bad header on object 
file: "\x7fELF\x02\x01\x01ÿ\x00\x00\x00\x00\x00\x00\x00\x00"
...

Also some pie charts are not displayed. Only some fractions of the legend.

I have also followed the dependency guide on:
https://wiki.gnucash.org/wiki/Uninstall_Gnucash_Linux

with the following changes deviating from the example:
   sudo apt install swig3.0 (was 2.0, but highlighted that newer version 
were also available on the system)
   sudo apt install libgwenhywfar-core-dev libgwenhywfar79 
libgwenhywfar79-dev
   #was: sudo apt install gwenhywfar-tools libgwenhywfar60 
libgwenhywfar60-dev
   sudo apt install libgwengui-gtk3-0 libgwengui-gtk3-dev
   # was: sudo apt install libgwengui-gtk3 libgwengui-gtk3-dev

In the 'about' info window the following version is indicated.
Version 4.8
Build ID: git 4.9+(2021-12-18)
Finance-Quote: 1.51

I also did not have a previous 4.x version installed. Only the default 
3.8 version that was released with the 'ulyana' Mint version. This 
version was uninstalled before installing 4.9.

Any advice on this subject would be greatly appreciated.

Thanks,
Dirk


On 31.12.21 13:02, Christian Wehling wrote:
> Hi John, Geert,
> It works, thanks for your help!
>
> What have I done?
> 1. emptied all old, not needed build directories and uninstalled the old flatpak version.
> 2. removed all org.gnucash.*.gschema.xml and gschemas.compiled from /usr/local/share/glib-
> 2.0/schemas/
> 3. deleted $HOME/.cache/dconf
> 4. install GnuCash 4.9 again
>
> Regards and a happy new year,
> Christian
>
>
> Am Freitag, dem 31.12.2021 um 11:54 +0100 schrieb Geert Janssens:
>> This is misleading.
>>
>> Even the newer gnucash still installs schemas for org.gnucash.<something> next to
>> org.gnucash.GnuCash.<something>
>> In recent versions these are defined in org.gnucash.GnuCash.deprecated.gschema.xml (1)
>>
>>
>> So it's absolutely normal both will still show up in dconf.
>>
>> However if there are *two* sets of gschema.xml files that define the same org.gnucash.<something>
>> schema, the glib schema compiler will bail out as soon as it detects the first duplicate schema.
>> As a result it won't reach the schema files starting with org.gnucash.GnuCash and hence it won't
>> compile the newer schema.
>>
>> I have now looked at your dconf.backup file. It shows both org.gnucash.<something> and
>> org.gnucash.GnuCash.<something> entries. That's correct and should be so since gnucash 4.7. That's
>> when I added the new schema.
>>
>> I also went back to your very first message. In there you write:
>>>   If I run:
>>>   glib-compile-schemas --strict /usr/local/share/glib-2.0/schemas/
>>>   /usr/local/share/glib-
>>>   2.0/schemas/org.gnucash.dialogs.business.gschema.xml:3:1  Fehler in
>>>   Zeile 3, Zeichen 1: <schema id='org.gnucash.dialogs.business'> wurde
>>>   bereits angegeben.  --strict was specified; exiting.
>> This really points as /usr/local/share/glib-2.0/schemas as the cause. It holds gschema.xml files
>> from before gnucash 4.7 (the ones named org.gnucash.<something-not-GnuCash>
>>
>> As we have been talking about this in all directions it's not clear to me whether these are still
>> there. If so, can you remove those and rerun
>> ninja install ?
>>
>> Or instead of ninja install you can also do as John suggests in directly rerun glib-compile-
>> schemas. For that to work the org.gnucash.GnuCash.<something> schema files should be left in that
>> directory though.
>>
>> Regards,
>>
>> Geert
>>
>> (1) We need to keep those
>> 1. to be able to migrate the user' settings (a one-time event)
>> 2. allow the user to downgrade without loosing preferences
>> The old schema is targeted for full removal only in gnucash 6.
>>
>>
>> Op donderdag 30 december 2021 22:22:11 CET schreef John Ralls:
>>> Yesterday you attached a dump from dconf that shows both org.gnucash.GnuCash
>>> and org.gnucash schema entries. If you're absolutely sure that you've
>>> gotten rid of all instances of org.gnucash.foo.schema.xml from everywhere
>>> outside of your gnucash-4.7 build directory and you've removed the
>>> gschemas.compiled files from those places then another possibility is that
>>> your version of dconf keeps a cache. See if $HOME/.caches/dconf exists and
>>> if it does, delete it.
>>>
>>> In that same letter you said your build procedure is
>>>
>>>> cd gnucash-4.9/build
>>>> cmake -G"Ninja" -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_PYTHON=ON
>>>> ../source sudo ninja install
>>> Please modify that to
>>> cd gnucash-4.9/build
>>> rm -rf * && cmake -G"Ninja" -D CMAKE_INSTALL_PREFIX=/usr/local -D
>>> WITH_PYTHON=ON ../source ninja
>>> sudo ninja install
>>>
>>> If that fails please paste the whole output either to an attachment or to
>>> some upload site like Github's GIST and tell us the URL to it.
>>>
>>> Regards,
>>> John Ralls
>>
>> _______________________________________________
>> 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