libxml2 安装及使用

https://gitlab.gnome.org/GNOME/libxml2/

 ftp://xmlsoft.org/libxml2/libxml2-2.9.1.tar.gz

/configure
make
make install

[root@VM_162_1_centos libxml2-2.9.1]# make install
make  install-recursive
make[1]: Entering directory `/play/game/libxml2/libxml2-2.9.1'
Making install in include
make[2]: Entering directory `/play/game/libxml2/libxml2-2.9.1/include'
Making install in libxml
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/include/libxml'
make[4]: Entering directory `/play/game/libxml2/libxml2-2.9.1/include/libxml'
make[4]: Nothing to be done for `install-exec-am'.
 /usr/bin/mkdir -p '/usr/local/include/libxml2/libxml'
 /usr/bin/install -c -m 644 SAX.h entities.h encoding.h parser.h parserInternals.h xmlerror.h HTMLparser.h HTMLtree.h debugXML.h tree.h list.h hash.h xpath.h xpathInternals.h xpointer.h xinclude.h xmlIO.h xmlmemory.h nanohttp.h nanoftp.h uri.h valid.h xlink.h xmlversion.h DOCBparser.h catalog.h threads.h globals.h c14n.h xmlautomata.h xmlregexp.h xmlmodule.h xmlschemas.h schemasInternals.h xmlschemastypes.h xmlstring.h xmlunicode.h xmlreader.h relaxng.h dict.h '/usr/local/include/libxml2/libxml'
 /usr/bin/install -c -m 644 SAX2.h xmlexports.h xmlwriter.h chvalid.h pattern.h xmlsave.h schematron.h '/usr/local/include/libxml2/libxml'
make[4]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/include/libxml'
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/include/libxml'
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/include'
make[4]: Entering directory `/play/game/libxml2/libxml2-2.9.1/include'
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
make[4]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/include'
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/include'
make[2]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/include'
Making install in .
make[2]: Entering directory `/play/game/libxml2/libxml2-2.9.1'
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1'
 /usr/bin/mkdir -p '/usr/local/lib'
 /bin/sh ./libtool   --mode=install /usr/bin/install -c   libxml2.la '/usr/local/lib'
libtool: install: /usr/bin/install -c .libs/libxml2.so.2.9.1 /usr/local/lib/libxml2.so.2.9.1
libtool: install: (cd /usr/local/lib && { ln -s -f libxml2.so.2.9.1 libxml2.so.2 || { rm -f libxml2.so.2 && ln -s libxml2.so.2.9.1 libxml2.so.2; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libxml2.so.2.9.1 libxml2.so || { rm -f libxml2.so && ln -s libxml2.so.2.9.1 libxml2.so; }; })
libtool: install: /usr/bin/install -c .libs/libxml2.lai /usr/local/lib/libxml2.la
libtool: install: /usr/bin/install -c .libs/libxml2.a /usr/local/lib/libxml2.a
libtool: install: chmod 644 /usr/local/lib/libxml2.a
libtool: install: ranlib /usr/local/lib/libxml2.a
libtool: finish: PATH="/local/mysql++/lib/:/app/mysql/mysql_lib/bin/:/app/mysql/mysql_home/bin/:/usr/local/ssl/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/local/lib

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
 /usr/bin/mkdir -p '/usr/local/bin'
  /bin/sh ./libtool   --mode=install /usr/bin/install -c xmllint xmlcatalog '/usr/local/bin'
libtool: install: /usr/bin/install -c .libs/xmllint /usr/local/bin/xmllint
libtool: install: /usr/bin/install -c .libs/xmlcatalog /usr/local/bin/xmlcatalog
 /usr/bin/mkdir -p '/usr/local/bin'
 /usr/bin/install -c xml2-config '/usr/local/bin'
 /usr/bin/mkdir -p '/usr/local/lib'
 /usr/bin/install -c -m 644 xml2Conf.sh '/usr/local/lib'
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1
/usr/bin/install -c -m 0644 ./Copyright /usr/local/share/doc/libxml2-2.9.1
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1/examples
/usr/bin/install -c -m 0644 ./xmllint.c /usr/local/share/doc/libxml2-2.9.1/examples
/usr/bin/install -c -m 0644 ./testSAX.c /usr/local/share/doc/libxml2-2.9.1/examples
/usr/bin/install -c -m 0644 ./testHTML.c /usr/local/share/doc/libxml2-2.9.1/examples
/usr/bin/install -c -m 0644 ./testXPath.c /usr/local/share/doc/libxml2-2.9.1/examples
 /usr/bin/mkdir -p '/usr/local/share/aclocal'
 /usr/bin/install -c -m 644 libxml.m4 '/usr/local/share/aclocal'
 /usr/bin/mkdir -p '/usr/local/share/man/man1'
 /usr/bin/install -c -m 644 xml2-config.1 '/usr/local/share/man/man1'
 /usr/bin/mkdir -p '/usr/local/share/man/man3'
 /usr/bin/install -c -m 644 libxml.3 '/usr/local/share/man/man3'
 /usr/bin/mkdir -p '/usr/local/lib/pkgconfig'
 /usr/bin/install -c -m 644 libxml-2.0.pc '/usr/local/lib/pkgconfig'
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1'
make[2]: Leaving directory `/play/game/libxml2/libxml2-2.9.1'
Making install in doc
make[2]: Entering directory `/play/game/libxml2/libxml2-2.9.1/doc'
Making install in .
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/doc'
make[4]: Entering directory `/play/game/libxml2/libxml2-2.9.1/doc'
make[4]: Nothing to be done for `install-exec-am'.
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1/html
/usr/bin/install -c -m 0644 ./xml.html ./encoding.html ./FAQ.html ./structure.gif ./DOM.gif ./smallfootonly.gif ./redhat.gif ./libxml.gif ./w3c.png ./Libxml2-Logo-180x168.gif ./Libxml2-Logo-90x34.gif /usr/local/share/doc/libxml2-2.9.1/html
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1/html/html
/usr/bin/install -c -m 0644 ./html/*.html /usr/local/share/doc/libxml2-2.9.1/html/html
/usr/bin/install -c -m 0644 ./html/*.png /usr/local/share/doc/libxml2-2.9.1/html/html
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1/html/tutorial
/usr/bin/install -c -m 0644 ./tutorial/*.* 
        /usr/local/share/doc/libxml2-2.9.1/html/tutorial
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1/html/tutorial/images
/usr/bin/install -c -m 0644 ./tutorial/images/*.* 
        /usr/local/share/doc/libxml2-2.9.1/html/tutorial/images
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1/html/tutorial/images/callouts
/usr/bin/install -c -m 0644 ./tutorial/images/callouts/*.* 
        /usr/local/share/doc/libxml2-2.9.1/html/tutorial/images/callouts
 /usr/bin/mkdir -p '/usr/local/share/man/man1'
 /usr/bin/install -c -m 644 xmllint.1 xmlcatalog.1 '/usr/local/share/man/man1'
make[4]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/doc'
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/doc'
Making install in devhelp
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/doc/devhelp'
make[4]: Entering directory `/play/game/libxml2/libxml2-2.9.1/doc/devhelp'
make[4]: Nothing to be done for `install-exec-am'.
 /usr/bin/mkdir -p '/usr/local/share/gtk-doc/html/libxml2'
 /usr/bin/install -c -m 644 libxml2.devhelp general.html index.html libxml2-c14n.html libxml2-catalog.html libxml2-chvalid.html libxml2-debugXML.html libxml2-dict.html libxml2-DOCBparser.html libxml2-encoding.html libxml2-entities.html libxml2-globals.html libxml2-hash.html libxml2-HTMLparser.html libxml2-HTMLtree.html libxml2-list.html libxml2-nanoftp.html libxml2-nanohttp.html libxml2-parser.html libxml2-parserInternals.html libxml2-pattern.html libxml2-relaxng.html libxml2-SAX2.html libxml2-SAX.html libxml2-schemasInternals.html libxml2-schematron.html libxml2-threads.html libxml2-tree.html libxml2-uri.html libxml2-valid.html libxml2-xinclude.html libxml2-xlink.html libxml2-xmlautomata.html libxml2-xmlerror.html libxml2-xmlexports.html libxml2-xmlIO.html libxml2-xmlmemory.html libxml2-xmlmodule.html libxml2-xmlreader.html libxml2-xmlregexp.html '/usr/local/share/gtk-doc/html/libxml2'
 /usr/bin/install -c -m 644 libxml2-xmlsave.html libxml2-xmlschemas.html libxml2-xmlschemastypes.html libxml2-xmlstring.html libxml2-xmlunicode.html libxml2-xmlversion.html libxml2-xmlwriter.html libxml2-xpath.html libxml2-xpathInternals.html libxml2-xpointer.html home.png left.png right.png up.png style.css '/usr/local/share/gtk-doc/html/libxml2'
make[4]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/doc/devhelp'
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/doc/devhelp'
Making install in examples
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/doc/examples'
make[4]: Entering directory `/play/game/libxml2/libxml2-2.9.1/doc/examples'
make[4]: Nothing to be done for `install-exec-am'.
/usr/bin/mkdir -p /usr/local/share/doc/libxml2-2.9.1/html
/usr/bin/install -c -m 0644 ./*.html ./*.c ./*.xml ./*.xsl ./*.res /usr/local/share/doc/libxml2-2.9.1/html
make[4]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/doc/examples'
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/doc/examples'
make[2]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/doc'
Making install in example
make[2]: Entering directory `/play/game/libxml2/libxml2-2.9.1/example'
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/example'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/example'
make[2]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/example'
Making install in xstc
make[2]: Entering directory `/play/game/libxml2/libxml2-2.9.1/xstc'
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/xstc'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/xstc'
make[2]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/xstc'
Making install in python
make[2]: Entering directory `/play/game/libxml2/libxml2-2.9.1/python'
make  install-recursive
make[3]: Entering directory `/play/game/libxml2/libxml2-2.9.1/python'
Making install in .
make[4]: Entering directory `/play/game/libxml2/libxml2-2.9.1/python'
make[5]: Entering directory `/play/game/libxml2/libxml2-2.9.1/python'
make[5]: Nothing to be done for `install-exec-am'.
 /usr/bin/mkdir -p '/usr/local/share/doc/libxml2-python-2.9.1'
 /usr/bin/install -c -m 644 TODO '/usr/local/share/doc/libxml2-python-2.9.1'
 /usr/bin/mkdir -p '/usr/lib/python2.7/site-packages'
 /usr/bin/install -c -m 644 drv_libxml2.py libxml2.py '/usr/lib/python2.7/site-packages'
 /usr/bin/mkdir -p '/usr/lib/python2.7/site-packages'
 /bin/sh ../libtool   --mode=install /usr/bin/install -c   libxml2mod.la '/usr/lib/python2.7/site-packages'
libtool: install: warning: relinking `libxml2mod.la'
libtool: install: (cd /play/game/libxml2/libxml2-2.9.1/python; /bin/sh /play/game/libxml2/libxml2-2.9.1/libtool  --silent --tag CC --mode=relink gcc -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -Wno-long-long -module -avoid-version ../libxml2.la -lpthread -ldl -lutil -lm -lpython2.7 -Xlinker -export-dynamic -o libxml2mod.la -rpath /usr/lib/python2.7/site-packages libxml.lo libxml2-py.lo types.lo )
libtool: install: /usr/bin/install -c .libs/libxml2mod.soT /usr/lib/python2.7/site-packages/libxml2mod.so
libtool: install: /usr/bin/install -c .libs/libxml2mod.lai /usr/lib/python2.7/site-packages/libxml2mod.la
libtool: install: /usr/bin/install -c .libs/libxml2mod.a /usr/lib/python2.7/site-packages/libxml2mod.a
libtool: install: chmod 644 /usr/lib/python2.7/site-packages/libxml2mod.a
libtool: install: ranlib /usr/lib/python2.7/site-packages/libxml2mod.a
libtool: finish: PATH="/local/mysql++/lib/:/app/mysql/mysql_lib/bin/:/app/mysql/mysql_home/bin/:/usr/local/ssl/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/sbin" ldconfig -n /usr/lib/python2.7/site-packages
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/lib/python2.7/site-packages

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
make[5]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/python'
make[4]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/python'
Making install in tests
make[4]: Entering directory `/play/game/libxml2/libxml2-2.9.1/python/tests'
make[5]: Entering directory `/play/game/libxml2/libxml2-2.9.1/python/tests'
make[5]: Nothing to be done for `install-exec-am'.
 /usr/bin/mkdir -p '/usr/local/share/doc/libxml2-python-2.9.1/examples'
 /usr/bin/install -c -m 644 build.py attribs.py tst.py tstxpath.py xpathext.py push.py pushSAX.py pushSAXhtml.py error.py serialize.py validate.py tstURI.py cutnpaste.py xpathret.py xpath.py outbuf.py inbuf.py input_callback.py resolver.py regexp.py reader.py reader2.py reader3.py reader4.py reader5.py reader6.py reader7.py reader8.py readernext.py walker.py nsdel.py ctxterror.py readererr.py relaxng.py schema.py thread2.py sync.py tstLastError.py indexes.py dtdvalid.py '/usr/local/share/doc/libxml2-python-2.9.1/examples'
 /usr/bin/install -c -m 644 tstmem.py validDTD.py validSchemas.py validRNG.py compareNodes.py xpathns.py xpathleak.py tst.xml valid.xml invalid.xml test.dtd '/usr/local/share/doc/libxml2-python-2.9.1/examples'
make[5]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/python/tests'
make[4]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/python/tests'
make[3]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/python'
make[2]: Leaving directory `/play/game/libxml2/libxml2-2.9.1/python'
make[1]: Leaving directory `/play/game/libxml2/libxml2-2.9.1'
[root@VM_162_1_centos libxml2-2.9.1]# 

使用:

原文地址:https://www.cnblogs.com/heling/p/10795472.html