qt编译debug库不带d
‘壹’ QtCreator怎么使用debug功能
您好。
在项目project中配置下为debug模式!!Make:
mingw32-make.exe
debug
-w
in
。
首先要设置一个断点,然后Debug(当然要在Debug模式下),
程序会运行到断点处,然后就可以用F10或F11之类的调试了
Qt-SDK有debug功能的,不过用的是MingW编译器,编译成动态的debug版本后可以debug
如果还有问题,可以继续追问,感谢。
‘贰’ qt如何把debug编译成release版本
这个十分简单, 如果我理解的没有错的话, 你应该是在新建项目时没有添加Release对象吧?
1. 点击左侧边栏的Projects
2. 在Build Step里的qmake build configuration中选择Release
此时你编译出来的对象就是release的了...
如果是要上交的内容, 更改下build directory, 就OK了
如果你是在Shell下的话... qmake加参数 "-CONFIG+=Release(或者Debug)"
‘叁’ Qt creator 编译后没有生成debug和release文件夹
是你没有找到吧把,看看是不是你这只路径问题了,看看在哪里,不可能没有的,不然怎么运行了
Qt 自带的演示运行一般是不会再你目录生成的,会在他自己的一个特定的目录里面运行的
‘肆’ QT的代码编译没错,但是debug模式下会异常终止,在release模式下就没问题,请问是什么情况
qt代码在release模式下编译之后,会偶先题目所述现象,但是debug模式下确没事,单独运行release文件夹中的exe也可以,唯独在qtcreator中运行时不行,网络之后的答案基本是环境问题,巴拉巴拉,但是他也没说具体是什么环境问题,这叫我怎么排查?!
不过就在刚刚我又出现了这个问题,这种问题一般出现在如下情况:
1、添加一些新的模块或代码中需要新的qt的dll库等;
2、把别人的代码拉倒本地后再编译(别人的库包括上一条所述的内容);
qt的release模式是需要单独去寻找dll或相关链接库的,如果它自己找不到,就会爆出标题所述的内容,此时你可以检查你的环境(但是就像我之前说的,我也不知道我要检查什么环境!),另外一种有效的做法就是呢:
安装qt后会随着按照一个命令行工具(和windows自带的CMD类似),叫做 Qt 5.7 for Desktop (MinGW 5.3.0 32bit),在开始目录里打开这个工具,如下图:
在命令行中进入到,编译后的exe存放的目录中,然后输入命令:
windeployqt xxx.exe
其中xxx.exe就是你生成的exe名称,这条命令会把exe相关的内容解析出来,你会在文件夹中看到很多qt的相关dll,这些都是依赖性,有了这些依赖项之后,再返回运行qt creator就能成功运行啦~~~~
当然了,这种方式也适用于对应用打包,把exe单独放到一个文件夹,运行上述命令,这个文件夹就可以在没有qt的环境的电脑中运行了。
‘伍’ qt编程问题,高分求助 为什么我在编译器里编译能运行,然后到了debug目录下就运行不了,它提示说
debug目录下,需要依赖debug版本的动态库,你确定你拷贝的动态库文件是DEBUG版本的吗?比如QtCored4.dll,QtGuid4.dll,而不是QtCore4.dll和QtGui4.dll
‘陆’ 新人求教,急.qt4.8.6无法编译
认真核对操作步骤:
1、修改环境变量工具推荐:Rapid Environment Editor。
修改前请先备份当前的环境变量。然后:
(1)检查系统变量path,删除有关mingw其他版本等信息,以免与后续的mingw32-make冲突。
(2)检查用户变量INCLUDE、LIB、PATH、MSDevDir和MSVCDir,删除有关\Microsoft Visual Studio\VC98的信息,因为它们会与后续的mingw32-make冲突,导致编译出错。
2、在电脑上安装mingw编译器,假设路径安装在C:\Qt\mingw32。将C:\Qt\mingw32\bin添加进环境变量path,打开DOS命令行输入gcc --version和g++ --version和mingw32-make --version验证编译器安装成功。我用的MinGW版本是V4.8.2,
3、解压qt-everywhere-opensource-src-4.8.6.zip并进入目录。例如:D:\qt-everywhere-opensource-src-4.8.6\
4、依次执行以下DOS命令:
(1)configure -debug-and-release -opensource -prefix "D:\Qt4.8.6" -platform win32-g++ -nomake demos -nomake examples
常见的使用选项说明:
-debug-and-release 编译debug和release版
-opensource 选择开源协议并确认
-platform win32-g++ 使用mingw编译
-prefix "D:\Qt4.8.6" 指定编译结果目录,如果未指定则默认当前
-shared 创建和使用共享Qt库
-static 创建和使用静态Qt库
-nomake demos -nomake examples 不编译例程
-nomake tests 不编译tests
-skip qtwebkit 忽略qtwebkit,因为编译它特别消耗时间
-mp 使用多核优化编译
(2)mingw32-make
(3)mingw32-make install
5、编译完成后,把C:\Qt\mingw32\bin\路径下的三个文件libgcc_s_dw2-1.dll、libstdc++-6.dll和libwinpthread-1.dll拷贝到D:\qt-everywhere-opensource-src-4.8.6\bin\。另外,也请把步骤1备份的环境变量还原。
6、修改Qt安装路径
最初编译时选择的路径是D:\Qt4.8.6\。如果想将它复制到其他盘符,并且改名,例如:C:\Qt\4.8.6_MinGW。这样一来会有问题吗?是的,会有问题,因为Qt有绝对路径依赖症。改名后C:\Qt\4.8.6_MinGW\bin\的exe执行程序都会出问题,要么程序打不开,要么多国语言发生异常。用记事本打开C:\Qt\4.8.6_MinGW\bin\qmake.exe,查找关键字“qt_prfxpath”,可以看到里面含有原始的安装路径。我们不可以手动去修改qmake.exe,真正有效的解决方法是:
在C:\Qt\4.8.6_MinGW\bin\路径下创建一个qt.conf文件,内容为
[paths]
Prefix = C:/Qt/4.8.6_MinGW
请注意:qt.conf文件必须是ANSI格式,并且Prefix的斜杠风格采取的是Linux的,而非Windows,否则会失效。或者使用"Prefix = .. ",如此一来,任意路径有效。