Bug(七)—— error LNK2019:无法解析的外部符号

前言

error LNK2019,这类问题一般是因为链接lib库文件时的问题。
所以只要正确的进行lib库文件的链接,这类问题就会得到解决。


解决方法

lib库文件包含了DLL中函数的想关信息,因此我们只需要在项目添加对这些LIB的依赖既可;
1. 在VS2008中点击项目-》右键-》属性-》配置属性-》链接器-》输入-》附加依赖项:将相关的lib文件加入到附加依赖项中;
2.在附加库目录中添加所需lib库文件所在的目录;


注意点


1. 如果lib文件在项目文件同级目录下,那么附加库目录可以为空;
2. 附加库目录如果有多个,那么前后有优先顺序,查找lib库文件时,会先从排在最前面的库目录中查找。
如果找到,就链接对应的lib文件;否则,在其他库目录下进行查找,如果最终还是找不到,就会给出提示,说找不到***.lib


BUG特例


1.附加依赖项/附加库目录添加好后,依然出现“error LNK2019: 无法解析的外部符号 ”,粗略看一下,依赖的lib库文件名字正确,
在对应的附加库目录下也能找到相应的lib文件,似乎没错。重新编译发现,还是会提示“error LNK2019: 无法解析的外部符号 ”,
这时候就要想一想,附加库目录下也能找到相应的lib文件是否是对应需要的那个lib文件,因为有可能库目录下的lib文件不是最新的。
这时,需要做的是重新编译生成对应的lib文件,然后重新包含链接(可以试着换个名字试试)。

2.如果lib文件在项目文件同级目录下,那么附加库目录可以为空;编译器会最先查找项目文件同级目录下的lib文件,
然后在查找附加库目录下的lib文件。因此,对于可能会有的提示“error LNK2019: 无法解析的外部符号 ”,可以尝试
更新同级库目录下的lib文件,也可以删掉原来同级目录下的lib文件,将它拷贝到其他目录,重新添加库文件和库目录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值