我正在编写一个C应用程序,它使用LibXML2进行XML解析和验证。在Linux中编译它非常简单,虽然在Windows和Mac中进行编译似乎非常严格。
对于Windows,我使用的是VC2005 / 08(我基本上都有这两个副本,因此会更容易使用)。我需要与Libxml2和其他库一起编译我的应用程序。 最重要的是我需要使用MSVCRT.DLL编译它,而不是像MSVCRT71.dll等其他CRT DLL库...
我也需要为Mac Os构建它。
请告知我该怎么做?
答案 0 :(得分:1)
曾几何时我设置了一个Visual C ++ 2005项目文件来从源代码构建libxml2。令人惊讶的是,我一直在说明我是如何做到的。这是针对2.7.4的,因此当前版本可能会有所不同。
首先,您必须运行configure脚本;我做了cscript configure.js iconv=no
因为我不想让事情与另一个依赖(iconv)复杂化。这会生成一些头文件,用于定义可用于构建的选项。
然后,您需要创建一个项目文件并将所有libxml2源文件添加到其中。我将自己设置为与静态C运行时链接的静态库,但您可能希望根据需要更改它。我不得不在我的项目文件中添加一些定义,以便它以某种方式构建;查看我的项目文件,我看到_REENTRANT;HAVE_WIN32_THREADS
。我不记得这些是什么意思,但我可能从makefile中收集了它们。
真的就是这一切;配置,添加文件,并设置一些定义。