Qt5 error LNK2019 无法解析的外部符号 解决办法
2013-05-30 16:44
579 查看
1、问题:
最近使用QT 5.0.2 设计界面,遇到一个纠结的问题:
建立工程后,再新建一个新的类(如class a),类声明在a.h头文件中,在main.cpp中 #include "a.h" 但是在链接过程中报错:类a的所有成员函数(构造函数,析构函数等)均无法识别,被编译器标为“无法解析的外部符号”。
解决:
将当前qt工程所在的父目录下的 build-(工程名)-Desktop_Qt_5_0_2_MSVC2010_32bit-Debug 文件夹删除,再构建项目即可运行。。
只能说qt5的编译器过于奇葩。。
2、问题:
在qt中使用了#include
<QtMultimedia/QAudioInput> 实现录音功能,但是发现所有使用QtMultimedia中的类的成员函数均被判为:error LNK2019: 无法解析的外部符号 "__declspec(dllimport),使用上一种方法无法解决。
解决:
查了网上的一些资料,发现链接错误是由于最后在生成可执行程序时无法找到某个库所造成的,即程序编译是没有问题的,例如你的代码里面声名了一个函数,然后也有很多地方用到了这个函数,但是这个函数真正的实现是在某个你引用的库里面实现,定义的,因此,在编译阶段是不会报错的,但等到真正链接时,就要去打这个函数的实现了,此时,如果编译器找不到对应的库文件(win下一般为.lib谁的),就会报这种链接错误了。
所以真正的问题是没有加载库
加载库的方法有两种:
1)在qt的工程文件.pro中添加:QT += multimedia (库名)
2)向项目添加对应的lib文件
我使用1)解决了问题。
最近使用QT 5.0.2 设计界面,遇到一个纠结的问题:
建立工程后,再新建一个新的类(如class a),类声明在a.h头文件中,在main.cpp中 #include "a.h" 但是在链接过程中报错:类a的所有成员函数(构造函数,析构函数等)均无法识别,被编译器标为“无法解析的外部符号”。
解决:
将当前qt工程所在的父目录下的 build-(工程名)-Desktop_Qt_5_0_2_MSVC2010_32bit-Debug 文件夹删除,再构建项目即可运行。。
只能说qt5的编译器过于奇葩。。
2、问题:
在qt中使用了#include
<QtMultimedia/QAudioInput> 实现录音功能,但是发现所有使用QtMultimedia中的类的成员函数均被判为:error LNK2019: 无法解析的外部符号 "__declspec(dllimport),使用上一种方法无法解决。
解决:
查了网上的一些资料,发现链接错误是由于最后在生成可执行程序时无法找到某个库所造成的,即程序编译是没有问题的,例如你的代码里面声名了一个函数,然后也有很多地方用到了这个函数,但是这个函数真正的实现是在某个你引用的库里面实现,定义的,因此,在编译阶段是不会报错的,但等到真正链接时,就要去打这个函数的实现了,此时,如果编译器找不到对应的库文件(win下一般为.lib谁的),就会报这种链接错误了。
所以真正的问题是没有加载库
加载库的方法有两种:
1)在qt的工程文件.pro中添加:QT += multimedia (库名)
2)向项目添加对应的lib文件
我使用1)解决了问题。
相关文章推荐
- Qt5 error LNK2019 无法解析的外部符号 解决办法
- Qt5 error LNK2019 无法解析的外部符号 解决办法
- Qt Creator5.4中出现error LNK2019 无法解析的外部符号的解决办法
- error LNK2019: 无法解析的外部符号 解决办法
- Qt Displaying Window教程中无法解析的外部符号错误解决办法
- QT无法解析的外部符号解决办法
- QT5 LNK2019无法解析的外部符号 之解决办法
- Visual Studio 2008 error LNK2019 错误解决办法(无法解析的外部符号 _WinMain)
- error LNK2019: 无法解析的外部符号 (C++编程出现问题的解决办法)
- QT5 LNK2019无法解析的外部符号 之解决办法
- QT 无法解析的外部符号 _main解决办法
- Qt 在VS下使用添加新类后报错LNK2019无法解析的外部符号解决办法
- Qt 出现了 Qt error LNK2019: 无法解析的外部符号 "public: __thiscall 怎么解决
- ARToolKit编译error LNK2019: 无法解析的外部符号 ___glutInitWithExit@12,该符号在函数 _glutInit_ATEXIT_HACK@8 中被引用 解决办法
- 无法解析的外部符号 "wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *)"的解决办法
- bstr error LNK2019: 无法解析的外部符号 "char * __stdcall _com_util::ConvertBSTRToString(wchar_t *)" 的解决办法
- Error LNK2001 无法解析的外部符号 的几种情况及解决办法
- 无法解析的外部符号 "wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *)"的解决办法
- MSVCRTD.lib(crtexe.obj):无法解析的外部符号 _main,该符号在函数 ___tmainCRTStart的解决办法
- error LNK2019: 无法解析的外部符号 __imp__FtpGetFileA@28 解决方法