如何在Windows上构建xmlsec

如何在Windows上构建xmlsec,windows,build,xmlsec,Windows,Build,Xmlsec,我正在尝试在Windows上构建。。。我不是一个有经验的C/C++开发人员,如果按照“make…make install”的思路做不到,我对构建过程并不十分熟悉 xmlsec附带了一个Win32子目录,一个漂亮的ECMAScript configure.js,它接受一组可选的参数和一个自述文件,自述文件解释了在运行configure之后,“nmake…nmake install”应该可以做到这一点。(显然这不是很容易,否则我就不会在这里发帖了!) xmlsec还依赖于许多其他库(请参阅以获取图形

我正在尝试在Windows上构建。。。我不是一个有经验的C/C++开发人员,如果按照“make…make install”的思路做不到,我对构建过程并不十分熟悉

xmlsec附带了一个Win32子目录,一个漂亮的ECMAScript configure.js,它接受一组可选的参数和一个自述文件,自述文件解释了在运行configure之后,“nmake…nmake install”应该可以做到这一点。(显然这不是很容易,否则我就不会在这里发帖了!)

xmlsec还依赖于许多其他库(请参阅以获取图形)。我已经下载了这些库的源代码

我的问题是,我不知道如何安排这些源代码,也不知道如何告诉configure.js脚本以使构建正常工作

例如,nmake进程抱怨找不到“iconv.h”(iconv是必需的库之一),这并不奇怪,因为没有。相反,在中有一个“iconv.h.”,在中有一个“iconv.h.构建”。。。我不知道如何制作所需的“iconv.h”

(我在命令提示符下使用MS Visual Studio 2010(我认为这是推荐的方法。)

有人知道怎么做吗?任何帮助都将不胜感激

短暂性脑缺血发作


Mike Peat

您使用Mingw32编译器尝试过Msys吗?在Msys中,您可以执行make and make install技巧。我已成功使用Msys编译xmlsec。如果您想使用Msys并且遇到困难,我可以提供帮助

总之,一般来说,Zlatkovic提供的预编译文件夹中必须有一个iconv.h文件(即C:\iconv\include\iconv.h)。您可能想再次下载该文件夹。在找出所有依赖项的位置后,将路径放在环境路径中。供您参考,我曾尝试使用configure.js,但未成功。希望您比我幸运:D

嗨,Kristine(@Kristine T)-(谢谢您回复我!)

我以前没有做过“弄干净”,但现在已经做了(“弄干净”,然后是“弄干净”——结果没有变化)

“make”的问题是,它在编译“dl.c”时抛出一个错误,表示“PACKAGE”未定义(第295行)

我在使用libxml2的编译版本时也遇到了问题-“configure”总是说它找不到它(它在那里,但是…),所以我一直在使用--with libxml src=…参数进行配置,为它提供libxml2的完整源代码,让configure至少完成OK

openssl或libxslt没有同样的问题,我可以告诉configure关于编译版本的信息(使用--with XXX={path to dir},或者省略={path}位,在这种情况下,它似乎可以找到MinGW自己的版本,但这不适用于libxml2


Mike

您不需要构建xmlsec,您可以直接从该链接下载车轮文件


它安装了所有的依赖项。

Hi Kristine-我在命令提示符下使用了MS Visual Studio。我在某个地方找到了一个版本的iconv.h来完成这项工作(我想是在web上……或者是在我下载的众多zip文件中的一个)。我确实通过configure.js路径,使用了Aleksey的mycfg.bat的修改版本,然后是nmake。我正在沿着Mingw32路径前进(已经安装了它和Cygwin),但后来我被mycfg.bat文件绊倒了,事情开始变得更清楚了……一旦我在正确的位置找到了所有正确的位,一切就都正常了。不过,感谢你的提议。嗨,克里斯汀,再次向你问好——原来我使用Visual Studio的方法有一个小缺陷:它链接到了错误的运行时DLL(它需要msvcrt.dll&在尝试了许多版本的VS之后,我找不到一个链接到它的版本)。所以我现在在MSys中使用MinGW,但我遇到了一些问题。你能告诉我你是如何进行设置以获得一个干净的构建的吗?TIA.MikeCo你能描述一下你遇到的问题吗?你是否尝试运行“make clean”来清除以前的所有问题?”build”?Kristine-请参见下文…此回复框似乎已用完字符(令人烦恼的是,它现在已经可以了)。上一次,我还必须使用libxslt的src,而libxml2和openssl对于配置部分是可以的。但我没有看到dl.c错误。有时,下载过程会使包中的某些内容失败。请尝试并祝您好运:D