2015-11-05 110 views
1

我正在使用boost通用图像库,它需要libpng。我构建了libpng并获得了libpng.lib,zlib.lib和libpngd.lib文件。当我试图编译我的项目时,Visual Studio提供了一个致命的错误如何在Visual Studio中使用libpng?

fatal error LNK1120: 21 unresolved externals 

与像_png_set_sig_bytes_png_read_row一堆无法解析的外部符号。这里发生了什么,以及如何解决它?

+1

首先检查你是否与图书馆连接 –

+0

所以你*建立* libpng和朋友 - 好。你确定你在.exe项目的“链接”中包含了这些库吗?看看这里:https://msdn.microsoft.com/en-us/library/669zx6zc.aspx – paulsm4

+0

@ paulsm4我已经将这些库包含在include目录,库目录和链接程序的附加库目录中。它仍然会产生错误。 –

回答

1

从MSDN:

https://msdn.microsoft.com/en-us/library/ba1z7822.aspx?f=255&MSPPError=-2147217396

To add .lib files as linker input in the development environment 

    Open the project's Property Pages dialog box. For details, see Setting Visual C++ Project Properties. 

    Click the Linker folder. 

    Click the Input property page. 

    Modify the Additional Dependencies property. 

你必须这样做;在.exe的链接命令中明确指定“libpng.lib”,“zlib.lib”和“libpngd.lib”。