[Qt] Release模式下产生调试信息】的更多相关文章

分两步,设置Qt配置文件,设置VS. https://blog.csdn.net/itas109/article/details/83652387 F:\Qt\Qt5.7.1\5.7\msvc2015_64\mkspecs\common\msvc-desktop.conf QMAKE_CFLAGS_RELEASE = -O2 -MD -Zi QMAKE_LFLAGS_RELEASE = /INCREMENTAL:NO /DEBUG https://blog.csdn.net/guo5036040…
之前碰到在release模式下无法打印对象的问题,只能切换到debug模式下调试, xcode release 模式下, 会关掉断点读取变量的上下文环境,以提高运行速度, ⚠️ 记得调试完再改回去,防止上线时忘记切换,影响性能!…
原文转自 http://blog.csdn.net/haizimin/article/details/50262901 在有的情况下,我们可能不能直接利用Debug模式进行程序调试,那么如何在Release模式下进行程序调试呢? 一.将项目属性设置为Release,“生成”--->“配置管理器”: 二.按Alt+F7,弹出属性页进行设置:…
工程项目上右键 打开 属性界面 1.c++ ---  常规 ---- 调试信息格式 选  程序数据库(/Zi)或(/ZI), 注意:如果是库的话,只能(Zi) 2.c/c++ ---- 优化 ----  优化   配置  选  禁止(/Od) 3.连接器   ---  调试  ----  生成调试信息    选  是 (/DEBUG)…
今天初略看了下,所谓Release和Debug只是大家和编译器约定的一些生成规则而已,所以调试是无所谓Release和Debug的,只是由于生成的规则不同,可能Release的一些调试结果没Debug精确详细而已. 下面是设置在Release模式下调试的方法: 1.工程项目上右键 -> 属性 2.c++ -> 常规 -〉调试信息格式    选  程序数据库(/Zi)或(/ZI), 注意:如果是库的话,只能(Zi) 3.c++ -> 优化 -〉优化            选  禁止(/Od…
最近一个项目需要显示二维码,所以花了点时间(只用了一个晚上,写的很不完善),写了个显示二维码的控件.当然这个控件用到了些开源的代码,比如qrencode,所以我也打算把我的代码开源. 我的代码参考了 http://stackoverflow.com/questions/21400254/how-to-draw-a-qr-code-with-qt-in-native-c-c 基本就是按照这里面的思路来写的. 首先要下载 libqrencode,这是一个c 语言的QR code 生成库.QR Cod…
有时候软件发布,又不得不调试其中的某个dll模块, 这时候就需要在发布的release版本的软件中来调试其中的dll模块了. vs2015设置: 1.Release模式下右键工作属性,选择C/C++,General下,Debug Infomation Format选择Program Database(/Zi) 2.Optimization ,选择Optimization 选择No,禁止优化. 3.Linker下Debugging中的Generate Debug info 选择Optimize f…
在release模式下调试程序,经常出现"当前不会命中任何断点,还没有为文档加载"的问题,可尝试以下方法: 1. 属性 → 配置属性 → C/C++ → 常规 → 调试信息格式:选择 C7  兼容(/Z7) 2. 属性 → 配置属性 → C/C++ → 优化 → 优化:选择 禁用 3. 属性 → 配置属性 → 链接器 → 调试 → 生成调试信息:选择 是(/DEBUG) 正常情况下,如上设置就可以命中断点了,如果还不可以,那就是dll版本不匹配等其他原因了.…
debug模式调试信息全,但是速度很慢,在数据量比较大的时候非常影响调试效率,release模式速度快,但是没有调试信息.所以在编译的时候很多编译器会提供一种折中的编译方式,在release下提供调试信息,可以结合debug和release的优点进行调试,如用cmake可以编译RelWithDebInfo模式,qtcreator提供了profile的模式.但是有的时候vs2010项目工程仅仅编译了debug和release两种模式,还想使用这种折中的方式,可以设置编译属性达到相似的效果.根据网上…
就是这段代码: int main(int argc, char *argv[]) { QApplication a(argc, argv); cxcxsdee w; w.show(); QStringList list; ; i<; i++) { list << QString::number(i); } QTime tm; tm.start(); list.clear(); qDebug() << tm.elapsed(); return a.exec(); } 在VS20…
在Debug模式一切正常,但是在release模式下log4net不工作,查了很多资料,终于解决.具体做如下检查修改. 1.检查log4net写入日志文件路径是否正确: 2.检查对应日志文件路径是否有权限: 3.检查程序log4net配置获取路径: 最常见的问题是第三步,一般都是在AssemblyInfo.cs文件中写入如下代码 [assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Config…
在Debug模式下中断, 在Release模式下跳出当前函数的断言 #ifdef DEBUG #define __breakPoint_on_debug asm("int3") #else #define __breakPoint_on_debug #endif // 验证 #define UXY_ASSERT_RETURN_ON_RELEASE( __condition, __desc, ... ) \ metamacro_if_eq(0, metamacro_argcount(__…
/******************************************************************************************* * Qt 使用#define+qDebug()输出调试信息 * 声明: * 当我们在写程序的时候,往往需要写一些特殊的调试信息,同时很多时候又不愿意每次都 * 删除.添加,当然在Qt中有时候写qDebug中的D总是让人不那么舒服,如下定义成小写的感觉 * 还是挺不错的. * * 2015-12-16 深圳 南山平…
这两天测试OpenCV显示到MFC的Picture控件上,终于测试成功了,但是换到release模式下就会imread失败.发现问题是导入的lib问题. 因为VS如果通过Property Manager永久修改环境配置(即OpenCV头文件路径.库文件路径.库文件列表),debug模式的配置也会被release模式继承,对于路径来说没什么问题,对于库文件列表(即Property Manage -- Linker --Input)就有问题了.对OpenCV而言,xxxd.lib是给debug模式用…
编译策略介绍 关于优化级别:GCC_OPTIMIZATION_LEVEL 描述如下 None: Do not optimize.  [-O0]With this setting, the compiler’s goal is to reduce the cost of compilation and to make debugging produce the expected results. Statements are independent: if you stop the program…
最近调试一个离职的同事留下的工程,DEBUG模式下顺利,RELEASE的时候就崩溃了,显示为"帧不在模块中"--简直一头雾水 于是我修改配置,为了能够在Release模式中打断点调试和输出错误信息. 1 在资源视图中,打开工程的属性窗口 2 C++  常规 调试信息格式: 选择  程序数据库(/Zi)或(/ZI):注意:如果是库的话,只能(Zi) 3 C++ 优化 配置窗口中 禁用优化/0d 4 链接器 调试 配置窗口中 将生成调试信息修改为 是/DEBUG 调试完成后准备打包前再调整…
  前两天在群里看到在讨论如何把debug版中的符号表加到release版本中,觉得这个非常有用,所以学习一下. 使用的工具是objcopy. 如果要生成单独的调试信息文件,命令如下: objcopy –only -keep -debug foo foo.dbg 如果要去除调试信息(还可以使用strip命令),命令如下: objcopy --only -keep -debug foo foo.dbg 如果要添加调试信息文件链接,命令如下: objcopy --add -gnu -debuglin…
在VC release模式做如下设置:在 工程->属性->c/c++->常规->调试信息格式选择 -> 程序数据库(/Zi) 在 工程->属性->链接器->调试 ->生成调试信息 -> 是(/DEBUG) 另做如下设置: 在 工程->属性->c/c++->优化->优化->禁用(/Od) 在 工程->属性->c/c++->优化->全程序优化->否…
Release 与 Debug 的区别就不多说了, 简单来说 Release 优化过, 性能高一些. Debug 为方便调试. 默认情况下是 Debug, 那如何改成 Release 呢? 项目上右键,“属性”, 余下的如下图操作: 前几天发布项目,有时候就发布那几个dll,但是一个dll同时还有一个pdb文件,而且pdb文件貌似还挺大. 全选的话,要复制多一份pdb文件到服务器,上传时间长. 不全选,就要按住ctrl,再点选每个dll,每次都麻烦得很呀,我想release下,应该可以去掉pdb…
一般我们用Console.WriteLine()函数,将文本输出到控制台上来跟踪代码进行到了什么位置,局限性很大,适用范围窄. 1. 输出调试信息 命名空间 System.Dignostics Debug.WriteLine() Trace.WriteLine() 看下面的例子就能知道这两者的区别了 Debug Release 还有类似命令: Debug.Write(), Trace.Write(), Debug.WriteIf(), Trace.WriteIf(), Debug.WriteLi…
我遇到的问题是:把edit secheme调到debug模式运行没有问题,然后调到release模式的时候报目录下没有libTuyoo.a 解决办法 把断开真机设备,用IOS device下release模式编译一遍,然后把真机插上,运行,就好了.…
grails2.3.x中默认情况下运行模式被设置成了fork模式,在这种模式下,大家会发现设置了断点后无法进行中断.这是由于fork模式造成的,因为在fork模式下,JVM新起了一个进程,这样调试器就无法以本地运行方式内嵌其中,从而无法在断点处中断. 在fork模式下该如何进行调试呢?主要有如下几种方法: 启用fork模式下的debug状态 编辑conf/BuildConfig.groovy run: [maxMemory: 768, minMemory: 64, debug: true, ma…
因为在编译QT的时候默认是不编译成带调试信息的qtwebkit库的,不论如何设置参数都是没有用的.后面在一博客中查找到相关信息   1.编译带debug 信息的webkit 库 注释或者删除qt-everywhere-opensource-src-4.7.0/src/3rdparty/webkit/WebCore/WebCore.pro 中的红色两行代码 还有JavaScriptCore/JavaScriptCore.pro CONFIG(QTDIR_build) {     # Remove…
1.右键项目,选择属性 2.选择正确的配置,点击高级 3.调试信息选择 none,点击确定.…
原帖链接:http://stackoverflow.com/a/9063469 首先确定下项目的 Build Settings 是否已经设置过宏定义 DEBUG,如何看呢? 点击 Build Settings ,然后在搜索框里输入‘macros’ 如果已经设置过,在 Preprocessor Macros 的 Debug 后面会有 DEBUG=1,如果没有,就手动设置下. 接下来就可以这样做了 #ifdef DEBUG //do sth. #else //do sth. #endif http:…
如题,不能调试的问题,解决办法: 1.修改工程属性页 2.修改VS2015托管兼容模式 工具->选项->调试,勾选使用托管兼容…
1. 设置断点 选中需要设置断点的行,右键选择断点插入断点,此行左侧显示红色圆形标志.或者F9 有几个条件断点类型: a. 条件断点 b. 命中次数,大于,几倍于,大于等于你设置的断点次数此时中断 c. 筛选器,可以设置一些条件,这次条件可以有and 或者or的关系 ... 2. 判定语句 使用Debug.Assert(), Trace.Assert()…
问题: 代码在Debug模式下编译报出内存溢出的错误,而Release模式下则没有. 由于Debug模式下包含调试信息,并且不作任何优化.而Release模式进行了各种优化,内存检测等操作均省去,使得程序在代码大小和运行速度上都是最优的. 方法1: 猜测Release对代码进行了优化或者根本就没有进行内存检测,才导致Release模式下编译通过的.于是我进行了代码缩减,删除没有用的变量,问题仍然没有解决. 方法2: 我发现在Debug模式下,main.c文件淡黄色, ,Release模式下仍然为…
首先,可以肯定的说,两者是可以随时切换进行运行的,若不能运行,必定是配置出了问题 以Debugx64和Releasex64为例: 在Releasex64模式下,我配置好了各种路径: 于是乎,我切换到Debugx64下,也配置好了对应的路径,但就是运行不成功,总是报错"无法连接外部引用". 百思不得其解,为什么会这样? 其实我是被自己的思维所束缚住了,因为在Release模式下,我只修改了上面那三个路径,所以切换到Debug模式下也只需要修改这几个路径,这就是思维陷进. 最后的答案就是,…
程序是在release模式下生成的,并且arm和x64通过了验证,但是x86就出现了这个奇葩问题. 搞了半天发现是要把“优化代码”的选项勾上.…