%general-entities; ]> $LastChangedBy$ $Date$ libxml2-&libxml2-version; libxml2 Introduction to libxml2 The libxml2 package contains libraries and utilities used for parsing XML files. &lfs81_checked; Package Information Download (HTTP): Download (FTP): Download MD5 sum: &libxml2-md5sum; Download size: &libxml2-size; Estimated disk space required: &libxml2-buildsize; Estimated build time: &libxml2-time; Additional Downloads Optional Testsuite: - This enables make check to do complete testing. Recommended patch to prevent a segfault in itstool when using Python3: libxml2 Dependencies Optional Some packages which utilize libxml2 (such as GNOME Doc Utils) need the Python3 module installed to function properly and some packages will not build properly if the Python3 module is not available. The old Python2 module can be built after libxml2.so has been installed, see . Optional and (may be used in the tests) User Notes: Installation of libxml2 First apply a patch, which prevents segfaults in the Python module, when built by : patch -Np1 -i ../libxml2-&libxml2-version;-python3_hack-1.patch To ensure that the Python module can be built by , run: sed -i '/_PyVerify_fd/,+1d' python/types.c Install libxml2 by running the following commands: ./configure --prefix=/usr \ --disable-static \ --with-history \ --with-python=/usr/bin/python3 && make If you downloaded the testsuite, issue the following command: tar xf ../xmlts&testsuite-version;.tar.gz To test the results, issue: make check > check.log. A summary of the results can be obtained with grep -E '^Total|expected' check.log. If is installed and you want to check memory leaks, replace check with check-valgrind. The tests use http://localhost/ to test parsing of external entities. If the machine where you run the tests serves as a web site, the tests may hang, depending on the content of the file served. It is therefore recommended to shut down the server during the tests, as the root user: /etc/init.d/httpd stop systemctl stop httpd.service Now, as the root user: make install Command Explanations sed -i '/_PyVerify_fd/,+1d' python/types.c: This fixes the Python3 code to build with gcc-7. --with-history: This switch enables Readline support when running xmlcatalog or xmllint in shell mode. --with-python=/usr/bin/python3: Allows to build the libxml2 module with Python3 instead of Python2. : Add this switch if you have built , for better unicode support. : Add this switch to enable multithread support. Contents Installed Programs Installed Libraries Installed Directories xml2-config, xmlcatalog, xmllint and the drv_libxml2.py and libxml2.py Python3 modules. libxml2.so and optionally, the libxml2mod.so Python3 module /usr/include/libxml2, /usr/lib/cmake/libxml2, /usr/share/doc/libxml2-&libxml2-version;, /usr/share/doc/libxml2-python-&libxml2-version;, and /usr/share/gtk-doc/html/libxml2 Short Descriptions xml2-config determines the compile and linker flags that should be used to compile and link programs that use libxml2. xml2-config xmlcatalog is used to monitor and manipulate XML and SGML catalogs. xmlcatalog xmllint parses XML files and outputs reports (based upon options) to detect errors in XML coding. xmllint drv_libxml2.py is a SAX Python3 driver for libxml2. drv_libxml2.py libxml2.py is the Python3 binding for libxml2. libxml2.py libxml2.so provides functions for programs to parse files that use the XML format. libxml2.so libxml2mod.so is the interface for Python3 to use libxml2.so. libxml2mod.so