我正在尝试将我的项目(C++ 控制台应用程序)链接到外部静态库(基本上是一个 .lib
文件和一个 .h
头文件),在Visual Studio 2015。
我添加了包含 .lib
的文件夹的路径(我创建的特定文件夹,在项目的根文件夹下,仅包含 .lib 文件),在项目属性,以
- “C/C++ - 通用 - 附加包含目录”
- “链接器 - 通用 - 附加库目录”
而且我还在“链接器 - 输入 - 附加依赖项”中添加了文件名。
作为测试,我试图指定错误的文件名 - 这导致了 LNK1104
错误(当指定了正确的名称时不会发生)。
出于某种原因,一旦我将库 header (.h
文件)#include
放入我的main.cpp
文件中,“系统错误” accures -
The program can't start because external_dll.dll is missing from your computer [..]
出于某种原因,链接器根据 #include
d header 的名称查找 .dll
文件 - 尽管我已经链接了带有静态库的项目(.lib
文件)。
这个.dll
文件当然不存在。
我是不是漏掉了什么?
最佳答案
如果是以下情况:-
“出于某种原因,链接器根据#included header 的名称查找 .dll 文件 - 尽管我已经将项目与静态库(.lib 文件)链接起来。”
那么应该有一些方法可以禁用这个功能,我的意思是在VS2015的项目设置中,应该能够让链接器停止寻找dll文件对应的dll#include头文件。
还有排除字段,如果您不能执行上述操作,您可以尝试排除您遇到的 dll 文件,然后从那里取出它。
关于C++ - 无法链接到 VS2015 中的静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40992897/