Skipping the itstool module caused the gtk-doc failure, and skipping that 
caused the gtk+ failure, and so on. When a build fails you have to fix it, so 
don't *ever* use [3] give up on module.

The itstool failure itself is because python3 when built from scratch doesn't 
create a python or python-config symlink so itstool looks in the wrong place 
for the the python libxml2 module. I usually drop to the shell (option 4 on the 
jhbuild failure menu) cd to $PREFIX/bin, create the two symlinks, exit the 
shell and pick [1] from the menu to try again.

For xmlsec use either [2] ignore and continue to build or [6] wipe directory 
and start over.

Did you tell jhbuild to skip mysql?

You have a bad boost download so you'll have to delete the downloaded file and 
try again.

I pushed fixes for libgpg-error and libdbi-drivers tests/cgreen include 
problem. The latter involves a patch so you need to delete the source directory 
for it to apply.

Regards,
John Ralls


> On Feb 29, 2020, at 9:00 AM, jean laroche <rip...@gmail.com> wrote:
> 
> I started from a fresh user, with no trace of brew. I'm getting many fails.
> I created a pastebin with the messages of a re-run of jhbuild build, so you 
> can see the details:
> https://pastebin.com/293FMgVk
> 
> Let me know what you think. I'll be away from the mac until next Wed, but 
> I'll be within email contact.
> 
> A million thanks for the help!
> Cheers,
> Jean
> 
> 
> On 2/28/2020 8:06 PM, John Ralls wrote:
>> Jean,
>> 
>> Please remember to copy the list on all replies.
>> 
>>> On Feb 28, 2020, at 8:26 PM, jean laroche <rip...@gmail.com> wrote:
>>> 
>>> Thanks for the pointers John! Very useful! As a newbie building this, I 
>>> have no idea what's important and what not. Here are my notes.
>>> 
>>> Note that a lot of this is hacking, trying to get to a point where I can 
>>> build. The solutions are just band-aids, and they may not be good ones 
>>> either!
>>> 
>>>     • Build complained about perl XML parser. I started a shell at the 
>>> point where it failed and followed this.  perl -MCPAN -e shell, followed by 
>>> install XML::Parser. This fixed it.
>> xml-parser, along with several other critical infrastructure packages, is 
>> installed by `jhbuild bootstrap-gtk-osx`, which you need to run before 
>> starting the build proper. I wonder how you were able to proceed without 
>> that.
>> 
>>>     • There was an error finding gpg-error.h, which is here: 
>>> /usr/local/Cellar/libgpg-error/1.37/include/gpg-error.h so I did ln -s -> 
>>> /Users/gnucash/gnucash-stable/include/gpg-error.h
>> Gtk-OSX is incompatible with Home-brew. Not only must you not try to install 
>> into /usr/local/Cellar, you must purge your environment of any paths (PATH, 
>> DYLD_LIBRARY_PATH, PKG_CONFIG_PATH, etc.) pointing into it. Same for 
>> MacPorts.
>> 
>> Note that the Home-brew recipe for GnuCash simply downloads and installs the 
>> Mac release bundle from our distribution repository: Even they don't support 
>> building GnuCash from source. MacPorts does, but you have to decide to use 
>> either MacPorts or Gtk-OSX.
>> 
>>>     • Had to do brew install postgresql
>> See above.
>> 
>>>     • Got: “configure.ac: No such file or directory” Went into shell copied 
>>> everything from /Users/gnucash/gnucash-stable/src/libgpg-error-1.27 
>>> locally, and retried. It worked.
>> That's the wrong thing to do. Instead cd to the source dir and run either 
>> `autoreconf -fis` or `./autogen.sh`.
>> 
>>>     • Xmlsec refused because of “dirty” dir. I removed the entire xmlsec 
>>> directory. But then I get an error with cp -u which does not work on macos, 
>>> which I fixed by removing -ru in line 749 of docs/Makefile.* and 619 in 
>>> docs/api/Makefile.*
>> How did you remove the directory? The correct way is to use selection 6, 
>> "delete directory and start over" from the jhbuild error menu. It should 
>> take care of getting the build restarted. OTOH I usually pick 2, "ignore the 
>> error and continue to configure" because it's frankly not that important to 
>> have the latest xmlsec code.
>> 
>>>     • Ran into a problem with libdbi-drivers: Had to add 
>>> -L/Users/gnucash/gnucash-stable/build/libdbi-drivers-0.9.0/drivers/mysql to 
>>> the Makefile located there, and link 
>>> /usr/local/Cellar/mysql@5.6/5.6.46_2/lib/libmysqlclient.18.dylib there as 
>>> well.
>> See above about Home-brew.
>> 
>>>     • Ran into: “can’t find cgreen/parameters.h” for libdbi-drivers-0.9.0. 
>>> I linked 
>>> /Users/gnucash/gnucash-stable/src/libdbi-drivers-0.9.0/tests/cgreen/include/cgreen
>>>  to the target dir. That fixed it.
>> I've been meaning to write a patch about that.
>> 
>>>     • Intltool complained about version. I have the right version, so I 
>>> removed check in the configure file.
>> It probably couldn't find the right version because of Home-brew.
>>>     • Then I was missing aclocal-1.15 … Ran  autoreconf -f -i as suggested.
>>>     • For libsoup same complaint about intltool version. Same action.
>>>     • Building shared-mime-info: manuallly ran configure 
>>> --disable-dependency-tracking, then skipped to build, but hit Makefile 
>>> 1161: *** missing separator. Edited. Also changed INTNL-UPDATE to 
>>> intnl-update in Makefile.in.in in po. Also remove everything after “check” 
>>> at line 149 same file.
>>> Then I get a hard crash:
>>> OSError: [Errno 2] No such file or directory: 
>>> '/Users/gnucash/gnucash-stable/_jhbuild/root-shared-mime-info/Users/gnucash/gnucash-stable'
>>> File "/Users/gnucash/Source/jhbuild/jhbuild/frontends/buildscript.py", line 
>>> 172, in build error, altphases = module.run_phase(self, phase)
>>> I added a pdb.set_trace() in the python script and created the dirs, then 
>>> continued the command. That worked.
>>> It would be great if you could tell me if these errors ring a bell for you, 
>>> and what better steps I should have taken to fix them... Not knowing 
>>> anything about this build process I went for the most expedient solution I 
>>> could find, chances are, not the best!
>>> 
>>> Thanks! I appreciate the help!
>>> 
>>> Jean
>>> 
>>> BTW: swig-unittest-support-guile.c  is nowhere to be found in the tree, 
>>> neither built nor src, so something's not right.
>> Unfortunately you've probably screwed up your Cellar on top of everything 
>> else so you might have to wipe it and reinstall Home-brew.
>> 
>> The easiest way to get a clean environment for building GnuCash is to create 
>> a new user and switch to that user for building with Gtk-OSX. Unfortunately 
>> there's no way to stop bash from reading the environment it's launched from 
>> so I think that the only other option is to create a different .bash_profile 
>> and .bashrc with no Home-brew configuration and play name-swap, then open a 
>> new terminal session. IMO switching users would be easier.
>> 
>> Regards,
>> John Ralls
>> 
> 

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

Reply via email to