【发布时间】:2021-04-20 14:19:06
【问题描述】:
我正在创建一个需要使用 libpng 的解决方案。我通过 Visual Studio 2019 的 Nuget 包管理器安装了这个库及其依赖项,包括
【问题讨论】:
-
要添加链接文件,请转到项目属性 -> 链接器 -> 输入 -> 附加依赖项并在其中添加库文件。
-
@D-RAJ 谢谢,我也试过了。我将 libpng16.* 和 zlib.* *.lib 和 *.dll 文件添加到附加依赖项,但现在我得到 LNK1104:“无法打开文件 libpng16.lib”。可能会建议我应该将这些文件直接复制到我的项目目录中,但是每次我更改构建配置(例如,在 Debug x64 和 Release x64 之间)时,我是否必须替换这些文件?
-
UPD:链接 *.dll 是不必要的(事实上,它导致了 LNK1107)。我将 *.lib 文件复制到项目目录,并了解了如何在 Debug 和 Release 配置中链接不同的 *.lib 文件,但这不是我正在寻找的确切解决方案。是否可以让 Visual Studio 在 NuGet 放入的目录中查找这些文件?这种解决方法之所以可行,是因为我在这个特定项目中没有使用很多包。
-
我没有想到您可以在附加依赖项中指定文件夹而不是文件。谢谢!
-
我最终没有使用 libpng 的 nuget 版本,因为我一直在调用
png_write_png(),所以我认为我做错了,并选择避免发布可能具有误导性的答案。尽管它确实帮助我解决了问题所涉及的具体问题,即使佩里的回答对于我的具体案例来说是一个更清洁的解决方案。 @TedLyngmo
标签: c++ visual-studio nuget libpng