Feeling sick… Churning along…
macOS Spice Build
checking for python module libxml2... not found configure: error: Python module libxml2 is needed to run this package *** Error during phase configure of itstool: ########## Error running ./configure --prefix /Users/ddd/spice-jhbuild/inst --disable-Werror --disable-static --disable-gtk-doc --disable-introspection *** [6/47]
Fix:
brew install libxml2 --with-python cd /Library/Python/2.7/site-packages sudo ln -s /usr/local/Cellar/libxml2/2.9.4_2/lib/python2.7/site-packages/* .
Notice that the --with-python
option is missing in some answers on the web.
Next error:
configure: error: GNU gettext tools not found; required for intltool *** Error during phase configure of yelp-xsl: ########## Error running ./configure --prefix /Users/ddd/spice-jhbuild/inst --disable-Werror --disable-static --disable-gtk-doc --disable-introspection *** [8/47]
This one is a bit more tricky, because gettext
is “keg-only” on macOS Brew, meaning that since macOS comes up with the BSD gettext
, the GNU version cannot be placed in the default path without breaking stuff.
So I dropped to a shell (option 4 proposed by jhbuild
after the failure) and manually ran configure
with environment variables pointing to the right locations:
PATH=$PATH:/usr/local/Cellar/gettext/0.19.8.1/bin LDFLAGS=-L/usr/local/Cellar/gettext/0.19.8.1/lib CPPFLAGS=-I/usr/local/Cellar/gettext/0.19.8.1/include ./configure
After that, I get a rather strange crash. I believe that jhbuild did not realize I had configured things myself.
test -z "/usr/local/share/pkgconfig" || ./install-sh -c -d "/Users/ddd/spice-jhbuild/inst/_jhbuild/root-yelp-xsl/usr/local/share/pkgconfig" /usr/bin/install -c -m 644 yelp-xsl.pc '/Users/ddd/spice-jhbuild/inst/_jhbuild/root-yelp-xsl/usr/local/share/pkgconfig' W: Ignoring uninstalled package: yelp-xsl Traceback (most recent call last): File "/Users/ddd/.local/bin/jhbuild", line 32, in jhbuild.main.main(sys.argv[1:]) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/main.py", line 155, in main rc = jhbuild.commands.run(command, config, args, help=lambda: print_help(parser)) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/commands/__init__.py", line 183, in run return cmd.execute(config, args, help) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/commands/__init__.py", line 52, in execute return self.run(config, options, args, help) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/commands/base.py", line 268, in run return build.build() File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/frontends/buildscript.py", line 163, in build error, altphases = module.run_phase(self, phase) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/modtypes/__init__.py", line 420, in run_phase method(buildscript) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/modtypes/autotools.py", line 314, in do_install self.process_install(buildscript, self.get_revision()) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/modtypes/__init__.py", line 316, in process_install new_contents = fileutils.accumulate_dirtree_contents(destdir_prefix) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/utils/fileutils.py", line 45, in accumulate_dirtree_contents _accumulate_dirtree_contents_recurse(path, contents) File "/Users/ddd/Work/jhbuild/Source/jhbuild/jhbuild/utils/fileutils.py", line 27, in _accumulate_dirtree_contents_recurse names = os.listdir(path) OSError: [Errno 2] No such file or directory: '/Users/ddd/spice-jhbuild/inst/_jhbuild/root-yelp-xsl/Users/ddd/spice-jhbuild/inst'
The next run of jhbuild still tries to construct yelp-xsl
. Time for plan B:
PATH=$PATH:/usr/local/Cellar/gettext/0.19.8.1/bin LDFLAGS=-L/usr/local/Cellar/gettext/0.19.8.1/lib CPPFLAGS=-I/usr/local/Cellar/gettext/0.19.8.1/include jhbuild -f jhbuildrc build
That goes one step further, then stops on:
configure: error: could not find DocBook XML DTD V4.3 in XML catalog *** Error during phase configure of gtk-doc: ########## Error running ./configure --prefix /Users/ddd/spice-jhbuild/inst --disable-Werror --with-xml-catalog=$JHBUILD_PREFIX/share/xml/catalog --disable-static --disable-gtk-doc --disable-introspection *** [10/47]
Simplest thing here is probably to brew install gtk-doc
. A bit scary, because now it builds Python 2.7.13 from sources. But oh well, while I’m at it 😉
Next error in line is:
autoreconf -fi Can't exec "glibtoolize": No such file or directory at /usr/local/Cellar/autoconf/2.69/share/autoconf/Autom4te/FileUtils.pm line 345, line 4. autoreconf: failed to run glibtoolize: No such file or directory autoreconf: glibtoolize is needed because this package uses Libtool *** Error during phase configure of glib: ########## Error running autoreconf -fi *** [13/47]
Linux Spice Build
Finally ran jhbuild successfully all the way. Now utilizing 49% of the root disk on the Linux partition… This is quite a bit more than I was expecting.
Half a sick day
Went back to the hotel to sleep all afternoon…