我需要为我的TeamSpeak 3 插件编译 libxml2 32 位和 64 位二进制文件,因为我找不到 dll/lib 64 位下载。当我在命令提示符应用程序中使用我编译的 libxml2.dll 作为依赖项时,它工作得很好。但是,当我尝试将它用作 TeamSpeak 3 中的依赖项时,程序在启动时立即崩溃。具体来说,它在这一行崩溃:
https://github.com/NobleUplift/TeamSpeak3WebsitePreview/blob/master/ts3websitepreview/plugin.c#L148
这是我在 Windows 上编译 libxml2 的批处理脚本:
@ECHO OFF
CALL "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"
CD libxml2-2.9.4\win32
nmake clean
cscript configure.js compiler=msvc zlib=true prefix=D:\Repos\libxml2\release include=D:\Repos\libxml2\dll\include lib=D:\Repos\libxml2\dll\bin debug=yes
nmake
nmake install
cd ../..
左边下载的 libxml2.dll 可以工作。右侧是编译好的libxml2.dll。我尝试使用 zlib 标志,并将我的 zlib 标头放在包含目录中,并将 dll/lib 放在 lib 目录中,但我无法将它链接到 DLL 中。