[GNC] Finance::Quote on a Mac with a foreign perl
Bruce Schuck
bschuck at asgard-systems.com
Sat Apr 27 17:32:07 EDT 2024
On Fri Apr 26, 2024, at 12:07:04 EDT Mr Ralls wrote:
> Here's an example of a failed session with Homebrew interference:
> https://paste.jvnv.net/view/CcsOd This comes from an IRC discussion
> at https://code.gnucash.org/logs/2024/04/16.html#T06:46:33. There
> was an earlier exchange with another longer dump that implicated
> Homebrew in which I told the user to clean it out but gncbot was
> apparently offline when that occurred and I don't have a link to it.
> In the dump you can see that the user is invoking gnc-fq-update and
> that it's running /usr/bin/perl. Later at line 97 you can see that
> /System/Library/Perl/Extras/5.34 is missing from @INC. That's where
> the pre-built networking modules are.
John,
That is indeed odd. I have two Macbook Pros. One Intel based running OSX
Catalina (It's a 2016 model), and a fairly new M1 running OSX Ventura.
Both have HomeBrew's Perl installed along side the Apple bundled Perl.
"Perl -V" does include "/System/Library/Perl/Extras/5.XX" on both
(Catalina is 5.18, Ventura is 5.30). "@INC" in Perl is compiled.
Installation of the HomeBrew Perl should in no way affect the value of
@INC in the OSX bundled Perl. Most people wanting to modify @INC do so
by a number of ways. Setting PERL5LIB, adding "-I<directory>" when
executing Perl, or adding something like "use lib '/home/foobar/code';"
to the Perl code are some examples.
As Vince showed, the HomeBrew Perl typically installs its modules under
the $HOME/perl5 path, or as I see on my Ventura Mac, /opt/homebrew/Cellar/.
From the command line prompt in the session, it appears the user having
the issue is on a MacBook Air. I wonder if the included version of Perl
is not the same as what gets installed on a MacBook?
I'd be curious to see the output of this find command from that user's Mac.
find /Library/Perl /System/Library/Perl -path '*/Net/*' -type f -name
'SSLeay.pm'
Or more simply, does /System/Library/Perl/Extras exist on the user's
MacBook Air?
That path may not be in the system Perl's @INC, because it's not part of
the Apple Perl package.
Bruce S
P.S. My older Intel based Mac actually has 3 separate Perls installed.
The third being one built from source where the paths in @INC are all
under /usr/local/bpsperl/.
More information about the gnucash-user
mailing list