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