I now have a function development environment with gnucash from git and FQ from 
git installed, so I can develop in both.

Documented everything at the bottom of 
https://wiki.gnucash.org/wiki/MacOS/Quartz

I’m going to start on new thread on this mailing list to discuss how to use the 
new FQ features in GnuCash.

Thanks,

Vince

> On Jan 16, 2023, at 9:10 PM, John Ralls <jra...@ceridwen.us> wrote:
> 
> xmlsec is how AQBanking and friends hook gcrypt.
> 
> Yes, the New Account Hierarchy Assistant's Apply button tries to open a 
> GncFileChooser that's derived from GtkFileChooser. That crashes if you try to 
> run it from the build directory.
> 
> No, you don't need to make a bundle, just run `ninja install` to install 
> everything in $PREFIX. When that's done you can run $PREFIX/bin/gnucash if 
> you're in a jhbuild shell or otherwise have $PREFIX set. If not you'll have 
> to spell out the path to the installed gnucash.
> 
> Regards,
> John Ralls
> 
> 
>> On Jan 16, 2023, at 5:56 PM, Vincent Lucarelli <vincent.lucare...@gmail.com> 
>> wrote:
>> 
>> Sorry - I didn’t explain that I used ACLs (chmod -a)  to completely block 
>> access for my build user “gnucash” from accessing /opt/homebrew and then 
>> started from the beginning of setting up a build environment as the gnucash 
>> user. During this rebuild, I ran into an error while building libxmlsec1, 
>> which depends on gnutls.  I traced that failure to -lgcrypt missing from the 
>> link line.
>> 
>> I was planning to document the full procedure on the wiki in case it helps 
>> someone else trying to start from scratch on Mac OS.
>> 
>> When creating a new file, is the last step to pick a file location with 
>> GtkFileChooser?  That would explain why I’m crashing on trying to create a 
>> new GnuCash file because I am running from the build directory.
>> 
>> Do I need to create a bundle for GtkFileChooser to not crash?
>> 
>> Thanks for your help,
>> 
>> Vince
>> 
>> 
>>> On Jan 16, 2023, at 7:13 PM, John Ralls <jra...@ceridwen.us> wrote:
>>> 
>>> I thought that you said the freetype2 problem was from Cmake finding 
>>> libbrotlidec in /opt/homebrew. I don't think that freetype2 has a 
>>> dependency on gnutls. Webkit (via libsoup<-glib-networking) and AQBanking 
>>> depend on it; IIRC the missing -lgcrypt is in the glib-networking build.
>>> 
>>> The problem with libdbdmysql.so is that 
>>> $PREFIX/lib/mariadb/libmariaconnector.3.dylib gets built with a bare 
>>> install name, so at runtime the loader doesn't know how to find it. The 
>>> post-build fix is to use install_name_tool to change its id to one with a 
>>> full path and then to change libdbdmysql.so's listing to use the path. To 
>>> get it to build correctly it needs CMAKE_MACOSX_RPATH=ON and 
>>> CMAKE_INSTALL_NAME_DIR=$PREFIX/lib. The first could be set in the module's 
>>> cmakeargs attribute but the second would have to be conjured in 
>>> jhbuildrc-custom using module_cmakeargs.
>>> 
>>> That shouldn't have caused the crash; it's probably to do with gsettings 
>>> schemas. GnuCash will crash when run from the build directory if you try to 
>>> do anything involving the GtkFileChooser because that won't be able to find 
>>> its Gsettings schemas.
>>> 
>>> Regards,
>>> John Ralls
>>> 
>>> 
>>> 
>>> 
>>>> On Jan 16, 2023, at 8:39 AM, Vincent Lucarelli 
>>>> <vincent.lucare...@gmail.com> wrote:
>>>> 
>>>> Got much farther with the build, but now stuck with a build/run time error.
>>>> 
>>>> The freetype2 error was rooted in gnutls.pc missing -lgcrypt.  I’m not 
>>>> sure if this is an issue for gnutls or a patch for arm64/MacOSx build.  
>>>> Manually added the dependency and finished the build.
>>>> 
>>>> Tried to run gnucash build from git/master, but it crashed when I tried to 
>>>> create a new file, after I walked through the setup, and right when I 
>>>> clicked “Apply”.
>>>> 
>>>> Decided to rebuild with debugging and during the build of gnucash, I 
>>>> noticed 
>>>> 
>>>>> libdbi: Failed to load driver: 
>>>>> /Users/gnucash/opt/gnucash/inst/lib/dbd/libdbdmysql.so
>>>> 
>>>> Trying to determine if libdbi or a dependency had an issue during build or 
>>>> if there is something else going on.
>>>> 
>>>> If any of this looks familiar, suggestions are appreciated.  Otherwise, 
>>>> I’ll keep digging.
>>>> 
>>>> Thanks,
>>>> 
>>>> Vince
>>>> 
>>>> PS - When I try to open Gnucash Preferences, it crashes too.  Will try to 
>>>> get more info on that later.
>>>> 
>>>> 
>>>> 
>>>>> On Jan 14, 2023, at 10:43 PM, john <jra...@ceridwen.us> wrote:
>>>>> 
>>>>> While you're getting familiar enough with GnuCash ask questions here. 
>>>>> Once you've got a PR written we can move the discussion to that PR.
>>>>> 
>>>>> Regards,
>>>>> John Ralls
>>>>> 
>>>>> 
>>>>>> On Jan 14, 2023, at 4:21 PM, Vincent Lucarelli 
>>>>>> <vincent.lucare...@gmail.com> wrote:
>>>>>> 
>>>>>> It looks like freetype2 picked up a dependency on 
>>>>>> /opt/homebrew/lib/libbrotlidec.dylib even though I started with a new 
>>>>>> user account and insulated the build with 
>>>>>>> cmakeargs = 
>>>>>>> '-DCMAKE_SYSTEM_IGNORE_PATH="/opt/homebrew:/opt/macports:/sw:/usr/local"'
>>>>>> as suggested at 
>>>>>> https://wiki.gnome.org/action/show/Projects/GTK/OSX/Building#Prerequisites
>>>>>> 
>>>>>> 
>>>>>> So when harfbuzz-no-cairo tried to configure against freetype2, it was 
>>>>>> looking for libbrotlidec.pc, but that wasn’t built by jhbuild.
>>>>>> 
>>>>>> I’ll try again tomorrow to see if I can track down exactly how homebrew 
>>>>>> is poisoning the build environment.
>>>>>> 
>>>>>> Provided I can actual build gnucash, should development questions about 
>>>>>> integrating FQ get_features() take place on this mailing list in a new 
>>>>>> thread or on GitHub under and issue?
>>>>>> 
>>>>>> Best,
>>>>>> 
>>>>>> Vince
>>>>>> 
>>>>>> 
>>>>>>> On Jan 14, 2023, at 4:44 PM, John Ralls <jra...@ceridwen.us> wrote:
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>> On Jan 14, 2023, at 10:22 AM, Vincent Lucarelli 
>>>>>>>> <vincent.lucare...@gmail.com> wrote:
>>>>>>>> 
>>>>>>>> Hi,
>>>>>>>> 
>>>>>>>> I am attempting to setup a new Mac OS X user account on Ventura 13.0.1 
>>>>>>>> to build gnucash so I can attempt to help integrate a new 
>>>>>>>> Finance::Quote feature into GnuCash. Ran into 2 problems following the 
>>>>>>>> instructions at https://wiki.gnucash.org/wiki/MacOS/Quartz 
>>>>>>>> 
>>>>>>>> First issue - was able to solve - copying /bin/bash to 
>>>>>>>> $HOME/.new_local/bin doesn’t seem to work on Ventura.  The process is 
>>>>>>>> immediately killed when the alternate copy of bash is run.  Some 
>>>>>>>> googling suggests it might have something to do with quarantine or 
>>>>>>>> code signing, but a few of the suggested solutions didn’t work. I have 
>>>>>>>> homebrew installed (but not in the path for the account I’m using to 
>>>>>>>> try and build gnucash), so I just installed bash with brew and then 
>>>>>>>> copied that executable into .new_local/bin.
>>>>>>>> 
>>>>>>>> Second issue - not sure how to proceed.  The bootstrap run 
>>>>>>>> successfully, but the jhbuild step failed to find freetype2
>>>>>>>> 
>>>>>>>>> PREFIX=$HOME/opt/gnucash jhbuild build
>>>>>>>> 
>>>>>>>>> ../../src/harfbuzz-4.1.0/meson.build:87:0: ERROR: Dependency 
>>>>>>>>> 'freetype2' is required but not found.
>>>>>>>>> 
>>>>>>>>> A full log can be found at 
>>>>>>>>> /Users/gnucash/opt/gnucash/build/harfbuzz-4.1.0/meson-logs/meson-log.txt
>>>>>>>>> WARNING: Running the setup command as `meson [options]` instead of 
>>>>>>>>> `meson setup [options]` is ambiguous and deprecated.
>>>>>>>>> *** Error during phase configure of harfbuzz-no-cairo: ########## 
>>>>>>>>> Error running meson --prefix /Users/gnucash/opt/gnucash/inst --libdir 
>>>>>>>>> lib -Dcoretext=enabled -Dfreetype=enabled -Ddocs=disabled 
>>>>>>>>> -Dbenchmark=disabled -Dintrospection=disabled --wrap-mode=nofallback 
>>>>>>>>> /Users/gnucash/opt/gnucash/src/harfbuzz-4.1.0 *** [20/76]
>>>>>>>>> 
>>>>>>>>> [1] Rerun phase configure
>>>>>>>>> [2] Ignore error and continue to build
>>>>>>>>> [3] Give up on module
>>>>>>>>> [4] Start shell
>>>>>>>>> [5] Reload configuration
>>>>>>>>> [6] Go to phase "wipe directory and start over"
>>>>>>>>> choice:
>>>>>>>> 
>>>>>>>> Any advice how how to proceed is appreciated.
>>>>>>> 
>>>>>>> harfbuzz-no-cairo depends on freetype-no-harfbuzz. If 
>>>>>>> $PREFIX/lib/pkgconfig/freetype2.pc isn't installed then something went 
>>>>>>> wrong with the latter. Scroll back in your terminal session to see what.
>>>>>>> 
>>>>>>> Regards,
>>>>>>> John Ralls
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to