Qt 项目在Vs和QtCreator的转换方法

本文详细讲解了如何从VS项目迁移到Qt Creator,包括.pro文件配置详解,如Qt模块的选择、编译选项、第三方库链接及Makefile安装路径设置。重点展示了.pro文件的关键配置项,并指导如何自动生成vcxproj文件以适应Qt环境。
摘要由CSDN通过智能技术生成

Vs转QtCreator

创建.pro文件
在这里插入图片描述
在这里插入图片描述
打开项目
在这里插入图片描述
选择套件

在这里插入图片描述
编译报错
在这里插入图片描述
保错原因是因为.pro文件少了Qt模块配置,在vs中创建项目时是配置好的
在这里插入图片描述
在这里插入图片描述
修改.pro文件,添加Qt模块配置,编译通过
在这里插入图片描述

QT .pro文件解析

Qt工程的pro文件,在创建工程时由QtCreater自动创建,我们可以往里面添加内容,增加库文件的声明,包含路径、预处理器定义,生成目录,输出中间目录等等设置。

配置选项描述

  • QT:指定所要使用的Qt模块
  • TARGET:指定编译后生成的目标文件名称
  • TEMPLATE:指定编译后生成app 还是 lib
  • DEFINES:预定义预处理器符号
  • SOURCES:当前工程中的C++源文件
  • HEADERS:当前工程中的C++头文件
  • FORMS:当前工程中的ui文件
  • VERSION:目标库版本号
  • DESTDIR:指定最终文件生成的目录
  • UI_DIR:UIC将ui转化为头文件所存放的目录
  • RCC_DIR:RCC将qrc文件转化为头文件所存放的目录
  • MOC_DIR:MOC命令将含Q_OBJECT的头文件转换为标准的头文件存放的目录
  • RC_FILE:程序中所用到的图片等资源文件
  • LIBS:指定工程要链接的库路径
  • INCLUDEPATH:指定工程要加载的头文件路径
  • CONFIG:工程配置和编译的参数
  • LIBPATH:指定工程要链接的库路径
  • INSTALLS:指定make install后程序的目录

例子

指定链接的三方库

CONFIG(debug, release|debug){
  win32:QCPLIB = qcustomplotd2
  else: QCPLIB = qcustomplotd
} else {
  win32:QCPLIB = qcustomplot2
  else: QCPLIB = qcustomplot
}
 
INCLUDEPATH += ../thirdPart
LIBPATH += ../thirdPart
LIBS += -l$$QCPLIB

编译为库

TEMPLATE = lib 
CONFIG += staticlib

去掉CONFIG += staticlib这一行则为编译动态库,包含则为静态库

指定debug,release,win32平台还是别的平台

CONFIG(debug, release|debug){
  win32:...
  else:...
} else {
  win32:...
  else:...
}

# 例:指定win32和unix的库路径
win32:LIBS+= libavformat.lib
unix:LiBS+= libavformat.so

判断编译环境是x86架构还是arm架构

contains(QT_ARCH, arm64){
    message("arm64") #在这里处理arm64所需
}else{
    message("x86")
}

# 以上可以组合使用,如:
CONFIG += debug_and_release
CONFIG(debug, debug|release){  //处理debug
    win32{
    }
    unix{
    	contains(QT_ARCH, arm64){
			message("arm64")
			}else{
			message("x86")
			}
    }
}else{     //处理release
    win32{
    }
    unix{
    }
}

在linux下编译后指定make install后的文件路径

target.path = /home/admin1/target
 
#需要拷贝的文件以及拷贝目地位置
conf.path = /home/admin1/target
conf.files += \
    ../config.ini \
    ../sqlite.db \
 
INSTALLS += target conf

# 上述描述的是,在终端编译完成后,执行make install,生成的可执行文件会拷贝到/home/admin1/target 这个路径下,
# ../config.ini   ../sqlite.db,一个配置文件和一个数据库文件也会拷贝到/home/admin1/target路径下。

QtCreator转Vs

在这里插入图片描述
在这里插入图片描述
自动生成.vcxproj文件
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值