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