[GNC-dev] Build on MacOS

jean laroche ripngo at gmail.com
Sat Mar 7 00:27:24 EST 2020

Thanks John,

Tonight I was able to successfully run jhbuild build, then to build and 
run gnucash on my mac at home.
Doing so required some manual fixes which I'm listing below. If it's not 
possible to patch them, at least they should be mentioned in the 
instructions for building on mac. I would be willing to update them if 
so, I would just need directions on how to do that.
Here are my notes for the errors I'm still getting when running jhbuild 
build. I would love to hear what your take is on these 3 issues.


    I ran into the libxml2 issue (libxml2 is missing so itstools can't
    be built).Dropped to shell, tried pip3.6 install libxml2-python3.
    That worked on my machine at work. John says instead to create links
    form python -> python3.On the home mac, that did not work, some
    includes could not be found to build libxml2. I found that I needed
    to ln -s "/Users/gnucash/gnucash-stable/include/libxml2"
    "/usr/local/include/."and ln -s
    /usr/local/include/.  I don't know why this happened on my home mac,
    but not on my work mac.

  * Ran into xmlsec error (dirty dir). I tried [6]. Then another error
    occurred: I had to update the two Makefiles (replace -ru by -r or
    replace cp by rsync) in docs and docs/api and that worked. Rsync
    should be used instead of cp because cp -ru does not exist on the
    mac, instead rsync -ru does.
  * Got the error: Your intltool is too old. This is caused by perl v
    5.26 (see https://github.com/raspberrypi/noobs/issues/470) which
    does not accept unescaped { and } in regexps. I patched
    intltool-update by looking for ${ and adding\ to { and }. Seems to
    have fixed it, but it was tedious to say the least.

But other than these 3 errors, all the rest now works fine. Thanks for 
all the required updates. I understand that once you have your build 
environment you don't need to re-create it, so I imagine it's not 
obvious to detect when jhbuild build fails for one reason or another. 
Cheers, Jean

More information about the gnucash-devel mailing list