[GNC] GnuCash on macOS Big Sur "Finance::Quote isn't installed properly"

John Ralls jralls at ceridwen.us
Fri Jan 22 20:10:59 EST 2021


Justin,

To answer your earlier question, no, F::Q doesn't work for me either on my DTK. I hadn't actually even tried to install it. It took two passes through sudo gnc-fq-update to get a good install so that I could run gnc-fq-check successfully from terminal.
I've been sticking print statements into price-quotes.scm and gnc-fq-check and looking at the results. It seems that there's something about the final printf in gnc-fq-check that chokes the guile read. I haven't figured out what yet and I'm out of time for today.

But you've confirmed my suspicion about having a non-Apple-supplied perl. That will never work with the bundle launched from Finder because your shell environment, which includes the path to the Homebrew-installed perl, isn't read when launching an app bundle from Finder. You may be able to get it to work from the terminal that way.

Regards,
John Ralls



> On Jan 22, 2021, at 4:48 PM, Justin via gnucash-user <gnucash-user at gnucash.org> wrote:
> 
> So... it doesn't actually work quite yet, but GnuCash does recognize it. Attempting to get quotes via the GnuCash-cli program results in a "unable to retrieve quotes for these items" message, followed by all of my securities.
> 
> The following will not work. It shows a bunch of missing dependency errors. This is because I installed F::Q manually, and its dependencies were not installed.
> 
>> echo '(yahoo_json "FSKAX")' | perl -w gnc-fq-helper
> 
> So I reinstalled perl (and wiped all of the modules). Then tried to install F::Q via the Perl shell. If I do:
> 
>> sudo perl -MCPAN -e shell
>>> install Finance::Quote
> 
> It will fail with the following error messages:
> 
>> Result: PASS
>> 
> 
>> ECOCODE/Finance-Quote-1.49.tar.gz
>> 
> 
>> Tests succeeded but one dependency not OK (LWP::Protocol::https)
>> 
> 
>> ECOCODE/Finance-Quote-1.49.tar.gz
>> 
> 
>> [dependencies] -- NA
>> 
> 
>> Failed during this command:
>> 
> 
>> CHRISN/Net-SSLeay-1.90.tar.gz : make NO
>> 
> 
>> SULLR/IO-Socket-SSL-2.068.tar.gz  : make_test NO one dependency not OK (Net::SSLeay); additionally test harness failed
>> 
> 
>> OALDERS/LWP-Protocol-https-6.10.tar.gz  : make_test NO 2 dependencies missing (IO::Socket::SSL,IO::Socket::SSL::Utils); additionally test harness failed
>> 
> 
>> ECOCODE/Finance-Quote-1.49.tar.gz : make_test NO one dependency not OK (LWP::Protocol::https)
> 
> Net::SSLeay fails because it cannot find the "openssl/err.h" header. I've installed openssl (with brew) and added the include directory to $LIBRARY_PATH, but it still doesn't find it. This is the root of the problem. I'm pretty sure if Net::SSLeay could be installed, everything else would fall in place. If anyone knows how to get this working, please let me know. I'll probably spend a little more time trying to figure it out tomorrow.
> 
> Regards,
> Justin
> 
> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
> On Friday, January 22nd, 2021 at 5:17 PM, Justin <jtraglia at pm.me> wrote:
> 
>> Woo. I've made progress. So I manually installed the latest F::Q from there GitHub release (following their instructions):
>> https://github.com/finance-quote/finance-quote/releases/tag/v1.50-rc.1
>> 
> 
>> This fixes the issue with running "perl -w gnc-fq-check" (and prints F::Q v1.50) that I mentioned in the last email. But if I run "gnc-fq-check" by itself, it still prints F::Q v1.49.
>> 
> 
>> Next, I tried running GnuCash from the ApplicationLauncher (or whatever it's called) but alas, F::Q didn't work. Then, I tried running GnuCash from the terminal. This **does** work! The GUI application shows F::Q v1.50.
>> 
> 
>> I'm going to mess around with it a little more. I'm unsure why there's a discrepancy.
>> 
> 
>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>> On Friday, January 22nd, 2021 at 5:07 PM, Justin <jtraglia at pm.me> wrote:
>> 
> 
>>> Alright. I think I might have found part of the issue. 
>>> 
> 
>>> According to this line in GnuCash source, gnc-fq-check is run as an argument to perl:
>>> https://github.com/Gnucash/gnucash/blob/maint/gnucash/price-quotes.scm#L47
>>> 
> 
>>> So I tried that out and it says F::Q is not installed.
>>> 
> 
>>>> $ perl -w gnc-fq-check
>>>> You need to install the following Perl modules:
>>>>   Finance::Quote
>>>> Use your system's package manager to install them,
>>>> or run 'gnc-fq-update' as root.
>>>> missing-lib
>>> 
> 
>>> So I re-run what it says, but it doesn't make a difference:
>>> 
> 
>>>> $ sudo ./gnc-fq-update
>>>> Password:
>>>> Reading '/Users/jtraglia/.cpan/Metadata'
>>>>   Database was generated on Fri, 22 Jan 2021 00:41:03 GMT
>>>> Date::Manip is up to date (6.83).
>>>> Finance::Quote is up to date (1.49).
>>> 
> 
>>> Lemme try installing F::Q another way.
>>> 
> 
>>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>>> On Friday, January 22nd, 2021 at 4:41 PM, Justin <jtraglia at pm.me> wrote:
>>> 
> 
>>>> John, sorry I forgot to check if launching GnuCash from the terminal makes a difference. F::Q does not work if I run GnuCash from the terminal. Good idea though.
>>>> 
> 
>>>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>>>> On Friday, January 22nd, 2021 at 4:38 PM, David H <hellvee at gmail.com> wrote:
>>>> 
> 
>>>>> I think that's what John meant in the second message he posted in this thread re running under Rosetta2 .....
>>>>> 
> 
>>>>>>> BigSur absolutely is supported. What's not yet available yet is a native build for Apple Silicon, but I've found so far that the Intel build of GnuCash works fine with Rosetta2.
>>>>> 
> 
>>>>>>> The BigSur upgrade seems to have messed up perl; I had to reinstall F::Q to get it working after I upgraded, but one could also set $PERL5LIB in the environment to include
>>>>>>>   the old /Library/perl/5.18 as a workaround. If you did that in a shell rc file it would make gnc-fq-helper work from terminal but not from GnuCash when run from LaunchServices.
>>>>> 
> 
>>>>>>> Does F::Q work when starting GnuCash from the terminal?
>>>>> 
> 
>>>>>>>   Regards,
>>>>>>> John Ralls 
>>>>> 
> 
>>>>> Cheers David H.
>>>>>  
>>>>> 
> 
>>>>> On Sat, 23 Jan 2021 at 07:54, Chris Graves <mohavebaked at gmail.com> wrote:
>>>>> 
> 
>>>>>> John Ralls, have you had success running F::Q on an M1 Mac (I seem to recall that you had a dev kit)?
>>>>>> 
> 
>>>>>>> On Jan 22, 2021, at 1:11 PM, Justin <jtraglia at pm.me> wrote:
>>>>>>> 
>>>>>>> Chris, this did not fix my issue.
>>>>>>> 
>>>>>>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>>>>>>> 
>>>>>>> On Friday, January 22nd, 2021 at 9:17 AM, Chris Graves <mohavebaked at gmail.com> wrote:
>>>>>>> 
>>>>>>>> I reinstalled (on my Intel Mac) by running:
>>>>>>>> 
>>>>>>> 
>>>>>>>> /Applications/Gnucash.app/Contents/Resources/bin/gnc-fq-update
>>>>>>>> 
>>>>>>> 
>>>>>>>>> On Jan 21, 2021, at 5:43 PM, Justin jtraglia at pm.me wrote:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>> Hello all, thank you for replying. I'm new to this email list.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>> Dave, I do have an M1 Mac. Maybe that's part of the problem.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>> Chris, how do you reinstall F::Q? The "perl -MCPAN -e shell" doesn't have an uninstall option. I did manually upgrade F::Q though, no change. Gnucash-cli still thinks it's installed improperly.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>> Thanks,
>>>>>>>>> 
>>>>>>> 
>>>>>>>>> Justin
>>>>>>>>> 
>>>>>>> 
>>>>>>>>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>>>>>>>>> 
>>>>>>> 
>>>>>>>>> On Thursday, January 21st, 2021 at 7:05 PM, davelist at mac.com wrote:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>> Chris, do you have an M1 or Intel Mac?
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>> On Jan 21, 2021, at 6:02 PM, Chris Graves mohavebaked at gmail.com wrote:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>> Just another point of information, I had the same issue, but it was resolved after reinstalling F::Q as John mentions below.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> On Jan 21, 2021, at 2:38 PM, davelist--- via gnucash-user gnucash-user at gnucash.org wrote:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>> On Jan 21, 2021, at 12:12 PM, John Ralls jralls at ceridwen.us wrote:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>> On Jan 19, 2021, at 8:32 PM, Justin via gnucash-user gnucash-user at gnucash.org wrote:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>> Hello everyone,
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>> I have an issue with GnuCash (4.4) and Finance::Quote (1.49) on macOS Big Sur (11.0). Despite not being officially supported, GnuCash itself works great, with the exception of Finance::Quote. The "get quotes" button in the Price Database is grayed out and the Security Editor has the warning "Finance::Quote isn't installed properly." When running Gnucash-cli, there is a similar error:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> $ /Applications/Gnucash.app/Contents/MacOS/Gnucash-cli --quotes get /Users/username/Documents/Finances/Tracking/finances.gnucash --debug
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> Application Path /Applications/Gnucash.app/Contents/MacOS/Gnucash-cli
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> (process:2277): gnc.gui-WARNING **: 22:01:17.540: [mac_set_languages()] Language list: en:en_US:C
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] 3 DBD drivers found
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] Driver: pgsql
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] Driver: sqlite3
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] Driver: mysql
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.gui> [Gnucash::CoreApp::start] System locale returned (null)
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.gui> [Gnucash::CoreApp::start] Effective locale set to en_US.UTF-8.
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.app-utils.gsettings> [gnc_gsettings_register_cb] schema: general, key: retain-days, settings_ptr: 0x7fde7e839430, handler_id: 1
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.app-utils.gsettings> [gnc_gsettings_register_cb] schema: general, key: retain-type-never, settings_ptr: 0x7fde7e839430, handler_id: 2
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.app-utils.gsettings> [gnc_gsettings_register_cb] schema: general, key: retain-type-days, settings_ptr: 0x7fde7e839430, handler_id: 3
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.app-utils.gsettings> [gnc_gsettings_register_cb] schema: general, key: retain-type-forever, settings_ptr: 0x7fde7e839430, handler_id: 4
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.app-utils.gsettings> [gnc_gsettings_register_cb] schema: general, key: file-compression, settings_ptr: 0x7fde7e839430, handler_id: 5
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> No quotes retrieved. Finance::Quote isn't installed properly.
>>>>>>>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> -   22:01:17 INFO <gnc.engine> [gnc_hook_lookup] no hook lists
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>> The error message above isn't particularly useful. It gets printed here:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>> https://github.com/Gnucash/gnucash/blob/1e7433daf3307fb3e6ff6d479aacb22d42941fda/gnucash/gnucash-commands.cpp#L91
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>> I'm pretty sure that Finance::Quote itself is installed properly. I'm not really sure why GnuCash does not recognize it.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> $ sudo gnc-fq-update
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> Reading '/Users/username/.cpan/Metadata'
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> Database was generated on Wed, 20 Jan 2021 02:29:03 GMT
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> Date::Manip is up to date (6.83).
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> Finance::Quote is up to date (1.49).
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>> A basic query shows that it does work:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> $ echo '(yahoo_json "CSCO")' | /Applications/Gnucash.app/Contents/Resources/bin/gnc-fq-helper
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>>>> (("CSCO" (symbol . "CSCO") (gnc:time-no-zone . "2021-01-19 12:00:00") (last . #e45.19) (currency . "USD")))
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>> BigSur absolutely is supported. What's not yet available yet is a native build for Apple Silicon, but I've found so far that the Intel build of GnuCash works fine with Rosetta2.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>> The BigSur upgrade seems to have messed up perl; I had to reinstall F::Q to get it working after I upgraded, but one could also set $PERL5LIB in the environment to include the old /Library/perl/5.18 as a workaround. If you did that in a shell rc file it would make gnc-fq-helper work from terminal but not from GnuCash when run from LaunchServices.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>> Does F::Q work when starting GnuCash from the terminal?
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>> Regards,
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>>> John Ralls
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> I can confirm the same issue - quotes work from the command line (after re-installing finance quote) but in gnucash, the "get quotes" button is disabled. I am running this on an M1 Mac (so obviously Big Sur). My old Mac (where quotes work) is running Catalina (and the M1 Mac was set up from a Time Machine backup of the old Maco) so I don't know if it's a M1 issue or a Big Sur issue.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> Justin, are you using an M1 Mac?
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> Thanks,
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> Dave
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> gnucash-user mailing list
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> gnucash-user at gnucash.org
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> To update your subscription preferences or to unsubscribe:
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> https://lists.gnucash.org/mailman/listinfo/gnucash-user
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> If you are using Nabble or Gmane, please see https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
>>>>>>>>>>>> --------------------------------------------------------------------------------------------------------------
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> Please remember to CC this list on all your replies.
>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> You can do this by using Reply-To-List or Reply-All.
>>>>>>>>>>>> 
>>>>>>> 
>>>>>>>>>>>> <publickey - jtraglia at pm.me - 0x04DB65EA.asc>
>>>>>>> <publickey - jtraglia at pm.me - 0x04DB65EA.asc>
>>>>>> 
> 
>>>>>> _______________________________________________
>>>>>> gnucash-user mailing list
>>>>>> gnucash-user at gnucash.org
>>>>>> To update your subscription preferences or to unsubscribe:
>>>>>> https://lists.gnucash.org/mailman/listinfo/gnucash-user
>>>>>> If you are using Nabble or Gmane, please see https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
>>>>>> -----
>>>>>> Please remember to CC this list on all your replies.
>>>>>> You can do this by using Reply-To-List or Reply-All.
> <publickey - jtraglia at pm.me - 0x04DB65EA.asc>_______________________________________________
> gnucash-user mailing list
> gnucash-user at gnucash.org
> To update your subscription preferences or to unsubscribe:
> https://lists.gnucash.org/mailman/listinfo/gnucash-user
> If you are using Nabble or Gmane, please see https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
> -----
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.



More information about the gnucash-user mailing list