Qt配置和功能使用踩坑说明

1、项目新建

  • 新建项目时要新建文件夹,构建文件夹就会在工程文件夹在一个new的文件夹下
图片名称
图1.1 新建文件夹

图片名称
图1.2 目录结构
  • 影子构建(Shadow Build) 是 Qt Creator 提供的一种构建模式,将编译生成的中间文件和可执行文件存放在源代码目录之外的单独构建目录,而不污染原始的源代码目录
图片名称
图1.3 Shadow Build

2、执行qmake

  • qmake 是 Qt 提供的一个构建工具,用于简化跨平台 Qt 应用的构建流程。它通过读取 .pro 文件生成适合目标平台的构建文件,例如 Makefile(windows & linux) 或 sln工程文件(Windows 安装了 Visual Studio)
图片名称
图2.1 执行qmake

3、Qt中pro文件中链接库的写法(以海康SDK为例)

1、在工程中直接引入lib文件,结果如下, -L表示链接到目录 -l表示指定HCCore.lib这个文件

LIBS += -L$$PWD/lib/ -lHCCore
INCLUDEPATH += $$PWD/include
DEPENDPATH += $$PWD/include

2、直接加DLL

LIBS += $$PWD/bin/HCCore.dll

3、这种写法不对,使用了-l,默认找HCCore.lib

LIBS += -L$$PWD/bin/ -lHCCore.dll

4、Working directory说明

  • 工作目录是指在qt creator中点击run按钮时程序运行的当前目录,也是代码中的当前目录,和exe所在的目录不一致,比如代码中读取Config.ini,需要将它放入Working directory而不是exe所在目录
  • 在qt creator点击run按钮与直接点击exe文件运行是不一样的环境,双击exe文件工作目录是当前exe所在的目录
图片名称
图4.1 Working directory

5、版本说明

  • 官网:https://download.qt.io/archive/qt/
  • 从Qt5.15.0开始Qt不在提供离线安装包
  • 下载5.15以下版本会报错"Download from your IP address is not allowed",需要VPNFQ。

6、Qt中的信号与槽使用踩坑

  • 当一个信号connect多个槽时,信号发出会根据代码中连接槽的顺序依次触发槽函数

X、Qt使用报错

X.1、当链接库的路径发生改变,执行qmake或重新构建,可执行程序仍然链接到之前的库路径
  • 原因:只修改pro文件中的库路径,执行qmake或重新编译,无法生成新的可执行文件
  • 方法一:改动源码,加个空格之类的,重新编译生成可执行文件(看程序生成时间是否改变)
  • 方法二:删除build目录下所有文件重新编译
X.2 Qt运行程序中出现不明显报错且无法进入debug
图片名称
图X.2.1 程序异常结束
X.3 出现__imp__函数名的报错
  • 原因: 没找到该函数
图片名称
图X.3.1 程序异常结束
X.4 Qt程序部署打包后双击exe报错,目录里有QtCored.dll
图片名称
图X.4.1 打包后双击exe报错
图片名称
图X.4.2 本地电脑环境变量
  • 原因: 使用了Windows系统的控制台运行windeployqt.exe打包,PowerShell启动后直接读取系统的环境变量,本地电脑中Qt的环境变量之前还有自己装的编译器D:\mingw64\bin,导致找错了编译器,打包错误
  • 方法一: 使用Qt编译器的shell(会预先设置Qt环境变量)打包
  • 方法二: 如果一定要用Windows系统控制台打包,要保证Qt的环境排在前面,首先PowerShell先找到
图片名称
图X.4.3 Qt编译器的shell
posted @   变秃了也就变强了  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示