[GNC] Quotes issue

Steve zephod at cfl.rr.com
Mon Apr 18 21:30:54 EDT 2022


On Sun, 17 Apr 2022 12:54:56 -0700
John Ralls <jralls at ceridwen.us> wrote:

> > On Apr 17, 2022, at 9:24 AM, john <jralls at ceridwen.us> wrote:
> > 
> > 
> >   
> >> On Apr 17, 2022, at 8:07 AM, Steve <zephod at cfl.rr.com> wrote:
> >> 
> >> On Sat, 16 Apr 2022 19:48:52 -0700
> >> john <jralls at ceridwen.us> wrote:
> >>   
> >>>> On Apr 16, 2022, at 9:47 AM, Steve <zephod at cfl.rr.com> wrote:
> >>>> 
> >>>> I'm getting this error:
> >>>> 
> >>>> steve at stevesdesktop:~$ gnc-fq-check
> >>>> Json3.c: loadable library and perl binaries are mismatched (got
> >>>> handshake key 0xce00080, needed 0xed00080)
> >>>> 
> >>>> But...
> >>>> steve at stevesdesktop:~$ sudo find /usr -name "libperl.so*" -exec
> >>>> ls -lah {} \; 2>/dev/null -rw-r--r-- 1 root root 3.6M Sep 24
> >>>> 2021 /usr/lib/x86_64-linux-gnu/libperl.so.5.32.1 lrwxrwxrwx 1
> >>>> root root 17 Sep 24  2021
> >>>> /usr/lib/x86_64-linux-gnu/libperl.so.5.32 -> libperl.so.5.32.1
> >>>> 
> >>>> steve at stevesdesktop:~$ perl --version
> >>>> 
> >>>> This is perl 5, version 32, subversion 1 (v5.32.1) built for
> >>>> x86_64-linux-gnu-thread-multi (with 47 registered patches, see
> >>>> perl -V for more detail)
> >>>> 
> >>>> So why does gnc-fq-check think there is a mismatch?     
> >>> 
> >>> As a first guess your perl json module is linked to a different
> >>> version of libjson than the one you have. If you used
> >>> gnc-fq-update to set up Finance::Quote then running it again
> >>> should fix the problem. If you installed F::Q from your distro's
> >>> package manager and there aren't any updates then the packager
> >>> for that module is running a bit behind, a common problem for
> >>> most distros since they rely on volunteers.
> >>>   
> >> 
> >> steve at stevesdesktop:~/Downloads$ sudo gnc-fq-update
> >> Reading '/root/.cpan/Metadata'
> >> Database was generated on Sun, 17 Apr 2022 00:17:02 GMT
> >> Date::Manip is up to date (6.86).
> >> Finance::Quote is up to date (1.51).
> >> 
> >> (update done here)
> >> 
> >> steve at stevesdesktop:~/Downloads$ sudo apt-get upgrade
> >> Reading package lists... Done
> >> Building dependency tree... Done
> >> Reading state information... Done
> >> Calculating upgrade... Done
> >> The following packages have been kept back:
> >> qdbus
> >> 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
> >> 
> >> steve at stevesdesktop:~/Downloads$ dpkg -l | egrep -i
> >> 'perl.*json|json.*perl' ii  libjson-parse-perl
> >> 0.61-1                                 amd64        module to read
> >> JSON into a Perl variable ii  libjson-perl
> >>   4.03000-1                              all          module for
> >> manipulating JSON-formatted data ii  libjson-xs-perl
> >>          4.030-1+b1                             amd64
> >> module for manipulating JSON-formatted data (C/XS-accelerated)
> >> 
> >> So am I right in thinking that the 4.030 versions are the problem?
> >> If so, I'll have to contact the maintainers.  
> > 
> > Please remember to copy the list on all replies.
> > 
> > libjson-xs-perl is probably the mismatched library.  briefly
> > explains the nature of the problem. Before you can blame the Debian
> > packager (the libjson-xs-perl maintainer is innocent) for upgrading
> > perl without upgrading all of the packages you need to be sure that
> > that's the only instance of libjson-xs-perl on your system. If
> > there's another one earlier in perl's include path it might be the
> > mismatched library. Have you ever run gnc-fq-update or used cpan
> > directly  on this machine?  
> 
> 
> I forgot to paste in the URI that explains the problem. It's
> https://foursixnine.io/blog/2019/01/21/perl-binaries-are-mismatched.html
> 
Looks like you are correct:

steve at stevesdesktop:~/Downloads$ sudo find / -name "libjson-xs-perl*" 2>/dev/null
[sudo] password for steve: 
/var/lib/dpkg/info/libjson-xs-perl.md5sums
/var/lib/dpkg/info/libjson-xs-perl.list
/var/cache/apt/archives/libjson-xs-perl_3.030-1_amd64.deb
/var/cache/apt/archives/libjson-xs-perl_4.030-1+b1_amd64.deb
/var/cache/apt/archives/libjson-xs-perl_3.040-1+b1_amd64.deb
/usr/share/doc/libjson-xs-perl

This is starting to come back to me now. IIFC, the version of perl that
came with my distribution did not have a Finance module and I ended up
with a separate version of Perl that did have Finance. I've done several
dist-upgrades since then so I'm going to delete the separate perl
version and attempt to install the Finance module from the distribution
perl.

Thanks,
Steve


More information about the gnucash-user mailing list