① 运用qt-ros生成的qt的项目运行release版本无法找到相关文件
点击左侧工具栏的“项目”,在“构建设置”中,将“编辑构建设置”更改为"Release"。特别要注意,“概要”中的"Show build"选择框,将勾选去掉,此处主要是选择将生成的文件放置在何处。
已经生成exe之后,将exe文件单独放置在一个文件夹内。该操作是得到exe运行需要的dll文件。
进入到该软件中,且在出现的cmd界面中,先进入到exe所在的文件夹。
② 求解,用QT creator怎么生成release版本
在Qt creator的左下角,有一个按钮(如图)。
然后点击绿色的类似于播放按钮的按钮进行编译、运行。
③ qt如何把debug编译成release版本
可以project->Set Active Config,选中release版本,此后,按F5或F7编译所得的结果就是release版本。
Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M)。
至于是否需要DLL支持,主要看你采用的编译选项。如果是基于ATL的,则Debug和Release版本对DLL的要求差不多。
如果采用的编译选项为使用MFC动态库,则需要MFC42D.DLL等库支持,而Release版本需要MFC42.DLL支持。
Release Build不对源代码进行调试,不考虑MFC的诊断宏,使用的是MFC Release库,编译十对应用程序的速度进行优化,而Debug Build则正好相反,它允许对源代码进行调试,可以定义和使用MFC的诊断宏,采用MFC Debug库,对速度没有优化。
④ qt release的emit不触发
生成的可执行文件可以解决这个问题。
debug和release的moc文件生成位置在一个路径下,导致在编译链接时本应该用到release的moc文件,结果却用了debug的moc文件,导致生成的可执行文件出现信号和槽不触发、程序中断等问题。
Qt是一个跨平台的C++图形用户界面库,由挪威TrollTech公司出品,包括Qt、基于FrameBuffer的QtopiaCore、快速开发工具QtDesigner和国际化工具QtLinguist等部分。Qt支持所有的UNIX系统,当然也包括Linux系统,还支持WinNT/Win2k、Windows95/98平台。
⑤ qt creator的一个项目配置成release编译出错问题
你选release的时候是不是选择错编译器了哦,错误上看你选择的MSV的编译器,不是Qt默认的mingw编译器,可能是这个原因,如果不是,你点击清理工程或重新构建看看,如果代码没什么问题,应该可以编译通过的。
⑥ Qt creator 编译后没有生成debug和release文件夹
是你没有找到吧把,看看是不是你这只路径问题了,看看在哪里,不可能没有的,不然怎么运行了
Qt 自带的演示运行一般是不会再你目录生成的,会在他自己的一个特定的目录里面运行的
⑦ 我的这个qt工程怎么没有release版本选择,请看图
因为你没有选择用release方式构建,你可以点击,左侧的项目(project)用你带的release版本构建一个新的即可
⑧ QT如何生成release版本
(针对windows下的情况)一般分为两种情况:
程序不含动态链接 即运行时不用.dll文件。此时,1. 点击左侧边栏的Projects
2. 在Build Step里的qmake build configuration中选择Release,重新构建运行即可。
程序中含有动态链接(含有.dll文件)。此时,按照情况1操作后很可能无法生成.exe文件,或者生成的.exe文件,在生成的release文件夹中(如没有生成release文件夹,自己建立一个release文件夹并且从debug文件夹中拷贝.exe文件进来亦可,并且该release文件夹不是必须在当前的工程目录下)加入相应的动态链接库文件(mingwm10.dll,QtGui4.dll,libgcc_s_dw2-1.dll,QtCore4.dll以及自编写的程序所调用到的其他.dll文件,注意:.dll文件一定不要添加完全,不能有遗漏)和程序运行时需要预处理的配置文件(如没有此种预处理所必须的文件,则不必考虑)等。但是这个时候还是经常发生错误,会提示 “
无法定位程序输入点******于动态链接库
QtCore4.dll上”这种类似的错误,这种情况是由于QtCore4.dll错误导致的,在qt的安装目录下有很多种QtCore4.dll文件,编译时用的dll不是QT/bin中的dll,而用得是qt下desktop下的bin中的dll,虽然同名,但是功能不同,选择错误会导致不能运行。以上操作都做到了,此时没有意外,即使在没有安装QTcreator的机器上,该release文件夹下的.exe文件也能正常运行。
⑨ 用QT做的软件,debug版本正常,但是Release版本就死掉了,会是什么原因
应该是相关的动态库(Qt*.dll)存在多个版本引起的,
QT4在不同版本发布的动态库的文件名都是一样的,
比如4.1.4和4.4.3的都是QtCore4.dll,
但实际的版本不一样会出现这样的问题.如果Debug版本的程序运行没有问题,
也就说明Debug版本的动态库没有上述的版本冲突的问题,
而是Release版本的动态库存在着版本冲突.
这是因为绝大部分软件发布时只带着release版本的程序,
而不会发布debug版本的程序.最好的办法是搜索一下硬盘内有多少目录下有qt的动态库
最有可能的问题是,你本机的的其他程序用到了其他版本的qt,并将含有qt动态包的路径设置在系统的path环境变量中,debug和release时寻找qt动态包的目录遍历顺序不一致,所以debug时调用你想要的qt动态包,而release程序执行时加载了别的版本的qt动态包,建议在系统内搜一下