visual studio 转 QT

最近开始从visual studio转到QT上,遇到一些问题,记录一下,作为备忘
1,多工程情况下的生成目录管理
假设我的项目中有一个console的控制台工程,一个dll工程,两个工程的默认生成路径都是一个很长名字命名的文件夹,和工程目录同级的;这很不符合visual studio的习惯,并且使用过程也会比较麻烦,需要将生成的dll收到copy到exe文件目录;
解决方法如下:
1,新建一个文件夹,作为solution目录,然后创建一个bin目录,用于保存生成的bin文件,一个lib文件,用于存放生成的lib文件或者a文件,见下图:
在这里插入图片描述
2,首先配置qtdll工程
a,选择debug模式
b,先将构建目录的内容删除,然后将showbuild check框设置为不选中
c,添加构建步骤,用于将生成的dll copy到bin/debug目录下
命令:cmd,
参数:"/c copy /y %{buildDir}\debug\qtdll.dll %{buildDir}\..\bin\debug\qtdll.dll"
然后生成一下就可以了,qtdll.dll文件会被自动的copy到bin\debug\ 目录下
d,添加构建步骤,用于将生成的a或者lib文件 copy到lib/debug目录下
命令:cmd,
参数:"/c copy /y %{buildDir}\debug\libqtdll.a %{buildDir}\..\lib\debug\libqtdll.a"
然后生成一下就可以了,qtdll.dll文件会被自动的copy到bin\debug\ 目录下,libqtdll.a文件被自动拷贝到lib\debug\目录下了
在这里插入图片描述
release的配置方式相同,不再赘述
3,配置qtconsole
生成路径的配置方式同步骤2,不需要步骤d
4,配置运行项
对qtconsole进行运行配置,方便调试,将原来的运行配置项全部删除,重新构建一个debug和release的配置项,见下图

在这里插入图片描述
在这里插入图片描述
5,实现对dll的引用
在此例子中,qtconsole调用qtdll的一个方法,所以需要在pro文件(本人使用的是qmake)中配置debug和release下分别连接不同的lib文件,在pro文件中添加如下配置字段:

CONFIG(release, debug|release){
    LIBS +=$$PWD/../lib/release/libqtdll.a
}else
{
    LIBS +=$$PWD/../lib/debug/libqtdll.a
}

6,重新编译,调试就可以了

如果需要对release进行调试,在pro文件加入:

QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
QMAKE_LFLAGS_RELEASE = $$QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值