Re: [GNC-dev] Various failures while building MacOS/Quartz from source

Jim DeLaHunt <[email protected]>
Newsgroups gmane.comp.gnome.apps.gnucash.devel
Message-ID <[email protected]>
On 2022-11-03 09:41, john wrote:
>
>
>> On Nov 3, 2022, at 1:56 AM, Jim DeLaHunt <[email protected]> wrote:
>>
>> On 2022-11-01 12:58, John Ralls wrote:
>>
>>>
>>>> On Oct 31, 2022, at 9:46 PM, Jim DeLaHunt <[email protected]> 
>>>> wrote:
>>>>
>>>> I am continuing my attempt to build GnuCash 4.11 from source  on 
>>>> macOS 12.6 (M1 CPU), following the instructions at 
>>>> https://wiki.gnucash.org/wiki/MacOS/Quartz ....
> [SNIP]
>> Run-time dependency freetype2 found: NO (tried pkgconfig, framework 
>> and cmake)
> [SNIP]
>>   Font callbacks (the more the merrier)
>>     FreeType         : NO
>
> Which is why it didn't install hb-ft.h, nor, presumably, build the 
> corresponding objects.
>
> [SNIP]
>
>> There is a file 'hb-ft.h' as part of harfbuzz 4.1.0[1].
>>
>> [1] <https://github.com/harfbuzz/harfbuzz/blob/4.1.0/src/>

...[snip]..

Thank you, John, I appreciate the help.

>
> So the question is now why didn't pkg-config find Freetype?
>
> Does /Users/gtkdeveloper/gnucash/lib/pkgconfig/freetype2.pc exist? (It 
> should, the installation is right after your elision note.)

No. But a freetype2.pc exists at a different path, shown right after my 
elision note:

On 2022-11-03 01:56, Jim DeLaHunt wrote:
> -- Installing: 
> /Users/gtkdeveloper/gnucash/inst/_jhbuild/root-freetype-no-harfbuzz/Users/gtkdeveloper/gnucash/inst/include/freetype2/freetype 
>
> ...[elide dozens of "Installing:" messages]...
> -- Installing: 
> /Users/gtkdeveloper/gnucash/inst/_jhbuild/root-freetype-no-harfbuzz/Users/gtkdeveloper/gnucash/inst/lib/pkgconfig/freetype2.pc 


When I tried rebuilding from scratch tonight, I encountered the same 
build failure of freetype, with the same symptoms as above. freetype2.pc 
does not exist at the path you gave:

% ls -lF /Users/gtkdeveloper/gnucash/lib/pkgconfig/*
zsh: no matches found: /Users/gtkdeveloper/gnucash/lib/pkgconfig/*

But that file does exist elsewhere on the path:

> If not, what is the result of `echo $PKG_CONFIG_PATH`?
>
% echo $PKG_CONFIG_PATH
/Users/gtkdeveloper/gnucash/inst/lib/pkgconfig:/Users/gtkdeveloper/gnucash/inst/share/pkgconfig:/usr/lib/pkgconfig

% ls -lF /Users/gtkdeveloper/gnucash/inst/lib/pkgconfig/freetype2.pc
-rw-r--r--  1 gtkdeveloper  staff  367 Nov  3 23:39 
/Users/gtkdeveloper/gnucash/inst/lib/pkgconfig/freetype2.pc

> If so, does starting a shell (`jhbuild shell`) and running `pkg-config 
> --modversion freetype2` return a version string?

Yes.

% pkg-config --modversion freetype2
24.1.18

However:

% pkg-config freetype2
[null output]

% pkg-config --exists freetype2
[null output]

% pkg-config --print-errors --exists freetype2
Package libbrotlidec was not found in the pkg-config search path.
Perhaps you should add the directory containing `libbrotlidec.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libbrotlidec', required by 'freetype2', not found

% pkg-config --variable pc_path pkg-config
/Users/gtkdeveloper/gnucash/inst/lib/pkgconfig:/Users/gtkdeveloper/gnucash/inst/share/pkgconfig

% pkg-config --variable pc_path freetype2
[null output]

% pkg-config --list-all | grep freetype
freetype2             FreeType 2 - A free, high-quality, and portable 
font engine.

So about 'libbrotlidec': the only mention I find of it is during the 
configuration of `gnutls`:

*** Checking out gnutls *** [46/76]
curl --continue-at - -L 
https://gnupg.org/ftp/gcrypt/gnutls/v3.7/gnutls-3.7.7.tar.xz -o 
/Users/gtkdeveloper/gnucash/src/pkgs/gnutls-3.7.7.tar.xz
   % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
                                  Dload  Upload   Total   Spent Left  Speed
100 6202k  100 6202k    0     0   266k      0  0:00:23  0:00:23 
--:--:--  172k
xzcat -d "/Users/gtkdeveloper/gnucash/src/pkgs/gnutls-3.7.7.tar.xz" | 
tar xf -
*** Configuring gnutls *** [46/76]
...[snip]...
checking whether to include brotli compression support... yes
checking for libbrotlienc >= 1.0.0... no
checking for libbrotlidec >= 1.0.0... no
configure: WARNING: *** LIBBROTLI was not found. You will not be able to 
use BROTLI compression.
checking whether to include zstd compression support... yes
checking for libzstd >= 1.3.0... no
configure: WARNING: *** LIBZSTD was not found. You will not be able to 
use ZSTD compression.
...[snip]...

This doesn't mean anything to me yet, but maybe it is helpful for you.

Thanks again, John. I appreciate the help.

      —Jim DeLaHunt
_______________________________________________
gnucash-devel mailing list
[email protected]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.