在VC2005 / 08和Mac Os环境中编译LibXML2

时间:2011-04-26 19:22:58

标签: windows linux visual-studio-2008 libxml2 osx-leopard

我正在编写一个C应用程序,它使用LibXML2进行XML解析和验证。在Linux中编译它非常简单,虽然在Windows和Mac中进行编译似乎非常严格。

对于Windows,我使用的是VC2005 / 08(我基本上都有这两个副本,因此会更容易使用)。我需要与Libxml2和其他库一起编译我的应用程序。 最重要的是我需要使用MSVCRT.DLL编译它,而不是像MSVCRT71.dll等其他CRT DLL库...

我也需要为Mac Os构建它。

请告知我该怎么做?

1 个答案:

答案 0 :(得分:1)

曾几何时我设置了一个Visual C ++ 2005项目文件来从源代码构建libxml2。令人惊讶的是,我一直在说明我是如何做到的。这是针对2.7.4的,因此当前版本可能会有所不同。

首先,您必须运行configure脚本;我做了cscript configure.js iconv=no因为我不想让事情与另一个依赖(iconv)复杂化。这会生成一些头文件,用于定义可用于构建的选项。

然后,您需要创建一个项目文件并将所有libxml2源文件添加到其中。我将自己设置为与静态C运行时链接的静态库,但您可能希望根据需要更改它。我不得不在我的项目文件中添加一些定义,以便它以某种方式构建;查看我的项目文件,我看到_REENTRANT;HAVE_WIN32_THREADS。我不记得这些是什么意思,但我可能从makefile中收集了它们。

真的就是这一切;配置,添加文件,并设置一些定义。