【发布时间】:2016-11-26 05:03:00
【问题描述】:
我需要为我的TeamSpeak 3 plugin 编译 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 头文件放在 include 目录中,把 dll/lib 放在 lib 目录中,但我无法让它链接到 DLL 中。
【问题讨论】:
标签: c visual-studio-2010 zlib libxml2 teamspeak