GraphicsMagick.NET 缺少 CORE_RL_bzlib_.lib 文件,C++ 链接器错误?

GraphicsMagick.NET missing CORE_RL_bzlib_.lib file, C++ linker error?

我是一名 VB 资深程序员,并且对 c# 相当擅长,但在涉及到 c++ 时我笨得像块砖头。但是尽管如此,我需要为 GraphicsMagick.NET 构建源代码,如果可以的话,特别是 .net 2.0,以尝试查看是否可以将其转换为完全托管的 dll,以便我可以将其导入 Unity3D(谁在乎我为什么需要构建它?)。

无论如何,如果不在此处发布整个项目,我意识到这里的任何人可能都很难确切地知道是什么导致了我的错误。但也许有人可以给出有根据的猜测?编辑:如果你想查看我正在使用的所有代码,你可以从 https://graphicsmagick.codeplex.com/SourceControl/latest 下载完整源代码的 zip,它给我这个错误。

这个项目,我想,应该是开箱即用的,没有错误。但事实并非如此。它在 include.h 文件中有这行代码:

#        if defined(HasBZLIB)
#          pragma comment(lib, "CORE_RL_bzlib_.lib")
#        endif

由于这条邪恶的路线,我得到了这个邪恶的错误:

LNK1104 cannot open file 'CORE_RL_coders_.lib'
GraphicsMagick.NET.net20
C:\Users\A\Downloads\graphicsmagick-d\GraphicsMagick.NET.net20\LINK 1   

作为优秀的 VB 程序员,我广泛搜索了我的项目文件夹,_.lib 文件不存在。但是在网上查找的过程中了解到,c++有时在构建工程的时候会生成.lib文件。所以也许这个文件应该在链接之前首先构建,但出于某种原因它没有首先构建?你可以看到我对c++是多么的无知。

当然我把这行注释掉了。但是随后它只是在下一行生成一个错误,即缺少另一个 .lib 文件。我假设它会在整个 include.h 文件中的每个 _.lib 文件上生成一个错误,并且有相当多的错误。

为什么这个应该构建的项目缺少这么多.lib文件?谁能给出有根据的猜测为什么?我是否可能遗漏了该项目的作者在安装说明中忘记提及的一些依赖项?或者这些 .lib 文件更有可能是由我以某种方式创建的,而我只是没有正确构建它?

GraphicsMagick 下的下载版本中,有两个名为 CopyLibsFromDropbox.cmdCopyLibsToDropbox.cmd 的脚本文件,第一个包含

echo You can download the library files here: https://www.dropbox.com/sh/a8krszzmo76fqkt/AAAc9Jho29Jk3iLrKhsBmw-Ma?dl=0
goto done

在该保管箱中,您会找到所需的所有 lib 文件。将整个东西下载为 .zip 并将其解压缩到 \GraphicsMagick 目录中。现在应该是这样的:

一旦库位于该文件夹中,您就可以实际编译代码了。如果您在上面的保管箱下载页面选择 "save this inside my dropbox",则这些脚本用于将它们从本地保管箱目录复制到此目录。最后,您应该会看到类似

的内容
3>  GraphicsMagick.NET.Web -> C:\Users\Maxi\Downloads\graphicsmagick-d1b5b1b28f26cdedf3ceeb555b94a87609286740\GraphicsMagick.NET.Web\bin\ReleaseQ16\x86\GraphicsMagick.NET.Web-x86.dll
3>  Codeanalysis is beeing executed...
3>  Codeanalysis finished -- 0 Errors, 0 Warning(s)
========== Build: 2 successfull, 0 failed, 0 recent, 1 skipped ==========

(who cares why I need to build it?)

我愿意。您已经可以将托管 dll 包含到 Unity 中,并且 GraphicsMagick.NET 已经为您提供了一个您应该能够在 Unity 中使用的 .NET dll,或者您对此有任何特殊问题吗?需要该库的一些图像处理功能吗?