本文章已经先存于【腾讯文档】QTCreator 集成IMSDK https://docs.qq.com/doc/DVm1EZFRpb09aZ3F6
- 在QTCreator创建一个窗口项目
- 项目名称随意,默认编译工具我这里选择了QMake,如果您由其他需求可以选择其他的。
- 在工具包选择中(Kit Selection)选择msvc
- 下一步,完成。
- 在生成的QT项目下面,创建include/IM、lib/Win32和lib/x64目录。目录结构如下:
- 下载SDK,将SDK的32库文件(DLL和Lib)放置到项目下lib/Win32,64位库文件放置到lib/x64,同时将头文件导入到include/IM下面
- 编辑项目配置文件.pro,加入如下代码
INCLUDEPATH = $$PWD/.
$$PWD/include/
debug {
contains(QT_ARCH,i386) {
# LIBS = -L$$PWD/lib/Win32/ -lliteav
LIBS = -L$$PWD/lib/Win32/ -limsdk
} else {
# LIBS = -L$$PWD/lib/x64/lib -lliteav
LIBS = -L$$PWD/lib/x64/ -limsdk
}
}
release {
contains(QT_ARCH,i386) {
# LIBS = -L$$PWD/lib/Win32/ -lliteav
LIBS = -L$$PWD/lib/Win32/ -limsdk
} else {
# LIBS = -L$$PWD/lib/x64/lib -lliteav
LIBS = -L$$PWD/lib/x64/ -limsdk
}
}
- 此时配置已经完成,您可以进行开发了。
- 验证:
- 在mainwindow.cpp中修改如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <IM/TIMCloud.h>
#include <QLabel>
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow){ ui->setupUi(this);}
MainWindow::~MainWindow(){ delete ui;}
void MainWindow::initUi(){
QLabel* lab = new QLabel(this);
lab->setText(TIMGetSDKVersion());
this->setFixedSize(size());
}
- 错误排除
- 您可能会遇到编译不通过的情况:提示int 未定义。
解决方案:将IM的头文件转换成UTF-8BOM编码保存(或许您的编译器是其他字符集,请以实际为准),我这里使用的Notepad 转码保存。
解决方案:可以参考上面第3点,在工具包选择中(Kit Selection)选择msvc。注意,我这里之前已经下载过Visual Studio 2019,通过Visual Studio 2019安装过,所以能直接选择,您可以在Windows官网上搜索下载MSVC开发工具集。
- 遇到了问题?您可以在此获得全部工程:
链接:https://pan.baidu.com/s/1X9tUE-HchbkKSmT0wozmNg
提取码:lebx