IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
</style><title>Upgrading 1.x code</title></head><bodybgcolor="#8b7765"text="#000000"link="#a06060"vlink="#000000"><tableborder="0"width="100%"cellpadding="5"cellspacing="0"align="center"><tr><tdwidth="120"><ahref="http://swpat.ffii.org/"><imgsrc="epatents.png"alt="Action against software patents"/></a></td><tdwidth="180"><ahref="http://www.gnome.org/"><imgsrc="gnome2.png"alt="Gnome2 Logo"/></a><ahref="http://www.w3.org/Status"><imgsrc="w3c.png"alt="W3C Logo"/></a><ahref="http://www.redhat.com/"><imgsrc="redhat.gif"alt="Red Hat Logo"/></a><divalign="left"><ahref="http://xmlsoft.org/"><imgsrc="Libxml2-Logo-180x168.gif"alt="Made with Libxml2 Logo"/></a></div></td><td><tableborder="0"width="90%"cellpadding="2"cellspacing="0"align="center"bgcolor="#000000"><tr><td><tablewidth="100%"border="0"cellspacing="1"cellpadding="3"bgcolor="#fffacd"><tr><tdalign="center"><h1>The XML C parser and toolkit of Gnome</h1><h2>Upgrading 1.x code</h2></td></tr></table></td></tr></table></td></tr></table><tableborder="0"cellpadding="4"cellspacing="0"width="100%"align="center"><tr><tdbgcolor="#8b7765"><tableborder="0"cellspacing="0"cellpadding="2"width="100%"><tr><tdvalign="top"width="200"bgcolor="#8b7765"><tableborder="0"cellspacing="0"cellpadding="1"width="100%"bgcolor="#000000"><tr><td><tablewidth="100%"border="0"cellspacing="1"cellpadding="3"><tr><tdcolspan="1"bgcolor="#eecfa1"align="center"><center><b>Developer Menu</b></center></td></tr><tr><tdbgcolor="#fffacd"><formaction="search.php"enctype="application/x-www-form-urlencoded"method="get"><inputname="query"type="text"size="20"value=""/><inputname="submit"type="submit"value="Search ..."/></form><ul><li><ahref="index.html"style="font-weight:bold">Main Menu</a></li><li><ahref="html/index.html"style="font-weight:bold">Reference Manual</a></li><li><ahref="examples/index.html"style="font-weight:bold">Code Examples</a></li><li><ahref="guidelines.html">XML Guidelines</a></li><li><ahref="tutorial/index.html">Tutorial</a></li><li><ahref="xmlreader.html">The Reader Interface</a></li><li><ahref="ChangeLog.html">ChangeLog</a></li><li><ahref="XSLT.html">XSLT</a></li><li><ahref="python.html">Python and bindings</a></li><li><ahref="architecture.html">libxml2 architecture</a></li><li><ahref="tree.html">The tree output</a></li><li><ahref="interface.html">The SAX interface</a></li><li><ahref="xmlmem.html">Memory Management</a></li><li><ahref="xmlio.html">I/O Interfaces</a></li><li><ahref="library.html">The parser interfaces</a></li><li><ahref="entities.html">Entities or no entities</a></li><li><ahref="namespaces.html">Namespaces</a></li><li><ahref="upgrade.html">Upgrading 1.x code</a></li><li><ahref="threads.html">Thread safety</a></li><li><ahref="DOM.html">DOM Principles</a></li><li><ahref="example.html">A real example</a></li><li><ahref="xml.html">flat page</a>, <ahref="site.xsl">stylesheet</a></li></ul></td></tr></table><tablewidth="100%"border="0"cellspacing="1"cellpadding="3"><tr><tdcolspan="1"bgcolor="#eecfa1"align="center"><center><b>API Indexes</b></center></td></tr><tr><tdbgcolor="#fffacd"><ul><li><ahref="APIchunk0.html">Alphabetic</a></li><li><ahref="APIconstructors.html">Constructors</a></li><li><ahref="APIfunctions.html">Functions/Types</a></li><li><ahref="APIfiles.html">Modules</a></li><li><ahref="APIsymbols.html">Symbols</a></li></ul></td></tr></table><tablewidth="100%"border="0"cellspacing="1"cellpadding="3"><tr><tdcolspan="1"bgcolor="#eecfa1"align="center"><center><b>Related links</b></center></td></tr><tr><tdbgcolor="#fffacd"><ul><li><ahref="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><ahref="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><ahref="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><ahref="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><ahref="ftp://xmlsoft.org/">FTP</a></li><li><ahref="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><ahref="http://www.blastwave.org/packages.php/l
<li>Change your configure script to look first for xml2-config and fall
back using xml-config . Use the --cflags and --libs output of the command
as the Include and Linking parameters needed to use libxml.</li>
<li>install libxml2-2.3.x and libxml2-devel-2.3.x (libxml-1.8.y and
libxml-devel-1.8.y can be kept simultaneously)</li>
<li>remove your config.cache, relaunch your configuration mechanism, and
recompile, if steps 2 and 3 were done right it should compile as-is</li>
<li>Test that your application is still running correctly, if not this may
be due to extra empty nodes due to formating spaces being kept in libxml2
contrary to libxml1, in that case insert xmlKeepBlanksDefault(1) in your
code before calling the parser (next to
<strong>LIBXML_TEST_VERSION</strong> is a fine place).</li>
</ol><p>Following those steps should work. It worked for some of my own code.</p><p>Let me put some emphasis on the fact that there is far more changes from
libxml 1.x to 2.x than the ones you may have to patch for. The overall code
has been considerably cleaned up and the conformance to the XML specification
has been drastically improved too. Don't take those changes as an excuse to
not upgrade, it may cost a lot on the long term ...</p><p><ahref="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>