链接库时未解析的外部符号
Unresolved external symbol when linking my library
我已经用VS2010编译了自己的库文件(.lib),但当我试图像一样引用它时
#pragma comment(lib,"path/to/lib.lib")
我不断得到未解析的外部符号。。。我做错了什么?到目前为止,#pragma注释(lib,"*.lib")适用于任何库,我也尝试在设置下链接它,但没有成功。
1)打开VS命令控制台(Tools/Visual Studio命令提示符)。
2) 使用cd
命令更改为包含有问题库的目录。
3) 输入:
dumpbin /all my_lib_name.lib > lib.txt
将my_lib_name.lib
替换为库的名称。(对于大型库,您需要将输出写入文本文件lib.txt
)
4) 打开这个新创建的lib.txt
以查看库的内容。更多详细信息可以在这里找到。
- 打开两个目录。
- 第一个失败的包含库
- 第二个包含带编译器的二进制目录(对我来说是C:\Program Files\Microsoft Visual Studio 9.0\VC)
- 将mspdb*.dll(从第一个目录)复制到带有库的目录
- 在库目录中打开cmd.exe
- 写入"%FIRST_DIRECTORY/bin/dumpbin.exe"/ALL library.lib>lib.txt(例如,我写的是"C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\dumpbin.exe"/ALL MyTestLibrary.lib>lib.txt)
- 搜索所需的方法(按类名或方法名)
如果你没有找到-开发者没有写。或者方法实现是内联的
如果第二个-你应该告诉IDE哪里是源。顺便说一句,库编译项目中并没有通过用户头访问的方法可以是内联的。你所能做的就是优化速度-快速呼叫
相关文章:
- C++:Application.cpp中抛出了未解析的外部符号(解决方案在问题的末尾,供未来的读者参考)
- 未解析的外部符号_MsiLocateComponentW@12.
- 在C++中使用 gRPC 时未解析的外部符号
- LibPrivoxy: 未解析的外部符号 __declspec(dllimport) int __stdcall Sta
- 尝试从 XamlApplication 编译 C++/WinRT 空白应用程序时,我收到未解析的外部符号 winrt_make_*
- 我收到错误LNK2001:未解析的外部符号(C++代码)
- 可视抽象类 c++(错误 LNK 2001:未解析的外部符号)
- 如何摆脱C++中未解析的外部符号"private: static char"错误?
- 当 lib 已添加到其他依赖项时,如何在 VS 中调试未解析的外部符号错误
- 仅在少数方法(静态或共享库)中解析的外部符号
- 未解析的外部符号"__declspec(dllimport)与 Spdlog c++ 库
- 函数 _main (OPENGL C++) 中引用的未解析的外部符号 ________
- 错误LNK2019未解析的外部符号"public: __thiscall SLinkList<char>::SLinkList<char>(void)"
- 使用静态 constexpr 成员的未解析外部符号
- 引入参数化构造函数后显示 LNK 2019 未解析外部符号的代码错误
- Dlib LNK2001未解析的外部符号USER_ERROR__consistent_build_configurati
- 矛盾的未解决的外部符号+未使用的库与VS2017和FFMPEG 4
- 链接器错误:切换到unicode生成给出:未解析的外部符号WinMain
- 类模板上一个特定函数的未解析外部符号
- LNK2001:未解析的外部符号public:static类std::vector