﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
1691	Error in 008-z-libxslt during blfs-tool build in jhalfs	shane87	alfs-log@…	"While building LFS-7.5 using jhalfs, I continuously hit an error during the blfs-tool phase. The specific error reported in the terminal is:

{{{
Building target 008-z-libxslt

 [+++++++++/Makefile:88: recipe for target '008-z-libxslt' failed min. 9 sec
make: *** [008-z-libxslt] Error 2
make: Leaving directory '/blfs_root/work'
make[1]: *** [mk_BLFS_TOOL] Error 2
make[1]: Leaving directory `/mnt/build_dir/jhalfs'

ERROR: Error 2 at common/common-functions line 39!


<jhalfs-trunk> exit

make: *** [all] Error 2
}}}

Checking the logs in /mnt/build_dir/blfs_root/work/logs/008-z-libxslt, I see that the specific error during the build is:

{{{

make[4]: Entering directory '/sources/libxslt/libxslt-1.1.28/python'
SRCDIR=. /usr/bin/python ./generator.py
Traceback (most recent call last):
  File ""./generator.py"", line 923, in <module>
    buildStubs()
  File ""./generator.py"", line 405, in buildStubs
    (parser, target)  = getparser()
  File ""./generator.py"", line 26, in getparser
    parser = xml.sax.make_parser()
  File ""/usr/lib/python2.7/xml/sax/__init__.py"", line 93, in make_parser
    raise SAXReaderNotAvailable(""No parsers found"", None)
xml.sax._exceptions.SAXReaderNotAvailable: No parsers found
Makefile:872: recipe for target 'gen_prog' failed
make[4]: *** [gen_prog] Error 1
make[4]: Leaving directory '/sources/libxslt/libxslt-1.1.28/python'
Makefile:536: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/sources/libxslt/libxslt-1.1.28/python'
Makefile:547: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/sources/libxslt/libxslt-1.1.28'
Makefile:372: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/sources/libxslt/libxslt-1.1.28'
}}}

After doing some searching, I have found that the error is caused by Python not being able to locate an xml parser module. From what I have read, and tested, the easiest way to fix this is to build and install expat before configuring and building Python. To confirm expat fixes the issue, I entered the chroot jail manually and installed expat, following the instructions from blfs. Then I re-ran the jhalfs tool, which successfully completed the entire build, including the blfs-tools phase, and 008-z-libxslt compiled perfectly.

What really strikes me as odd is that the blfs-tool does not pick up Python's recommended expat dependency. It builds libffi, which is also a recommended dependency for Python, but expat is not picked up.

I am attaching the log from my build of libxslt (/mnt/build_dir/blfs_root/work/logs/008-z-libxslt), the SBU_DU report from my jhalfs build (for complete system info), and the build log from the install of Python (/mnt/build_dir/blfs_root/work/logs/003-z-python)"	defect	closed	normal		jhalfs	SVN	normal	wontfix	blfs-tool, libxslt, expat	
