fatal error LNK1104: 无法打开文件“XXX".lib“

#include 情况下提示无法打开头文件时,确保已经包含头文件的附加目录

项目->属性->C/C++ ->常规->附加包含目录

同理,无法打开lib文件时,确保包含了相应的lib文件目录

如果包含了include库 仍然找不到头文件。重启编译器即可


我们在做一个工程时,工程内可能包括几个项目,每个项目负责一个子功能,最后在主项目中调用;很多时候这些项目都是以DLL的方式生成,那么我们在主项目调用DLL时,需要配置项目选项,如果配置不当,就会报错:fatal error LNK1104: 无法打开文件“***.lib“  ;


以VS2010为例,配置方法是:

1. 选则”Project“->"Property"->C/C++选项-->”General“-->Additional Include Directories,这个里面输入dll对应的.h头文件所在的目录;  目的是在主项目中调用#include<***.h>时能够根据这个目录找到头文件,否则就会报错,找不到头文件。


2.选则”Project“->"Property"->Linker选项-->"General"--》Additional Library Directories,这里面输入dll所在的目录,一般情况下,同一个工程的所有DLL项目输出都是在工程的默认输入目录,所有可以这儿输入:$(OutDir);


3..选则”Project“->"Property"->Linker选项-->”Addtional Dependencies“,这里就是输入lib文件名,多个的话用分号”;“隔开;


经过三个配置,就可以顺利调用dll的接口方法了


另外,除了这种配置的方法之外,还可以在文件中动态的输入,如:#pragma comment(lib, "../Debug/maker_qr_encoder.lib")

也可以达到效果

http://blog.csdn.net/zyjj_99/article/details/39394477

你可能感兴趣的:(Error)