最近在学习QT, 遇到一些crash, 也没看过QT源码啊, 就想类似Java一样, 在出错时进入源码跟踪一下, 但是QT和Java太不一样了, 死活进不去.

研究了几天, 发现本来是很简单的事情, 但是网上的文章让人容易钻进死胡同

说起来简单

  1. 用 Online Installer, 选中 "Qt Debug Information Files"
  2. 安装的时候, 还要选中 Source
  3. Qt Creator 自己的debug包不是QT的Debug包, 我们做自己的项目不需要, 除非你要开发Qt Creator自己的插件...
  4. QT Creator 的Debugger中设置 Attache Qt Source 到 $安装目录/5.14.2/Src

为啥有些人死活找不到

  • 为了避免在线安装,很多教程都说网速慢... 用的不是Online Install, 里面没有 "Qt Debug Information Files" --其实国内有镜像, 速度都不错
  • 可能Windows/Linux/MacOS三个系统的调试包安装不一样?
  • Qt Creator 自己的debug包不是QT的Debug包, 容易理解错误
  • 自己编译太慢了, 我编译了20个小时.... 还得生成Debug Symbols....太累了

如何使用镜像安装 MaintenanceTool

自己编译

自己编译也是可以的, 而且MacOS我几乎啥也没准备, 就开始编译了....只遇到一个SDK小版本解析的error ,解决了. 就是编译用了了20多个小时.... (里面有个chromium ...)

示例

QT 如何在调试时能进入源码方式(MacOS)的更多相关文章

  1. windows 下使用 mingw编译器 调试时 无法跟进源码

    windows 下使用 mingw编译器 调试时 无法跟进源码 最近在公司使用QT 开发,官方在线下载的 安装的QT mingw 都是没有debug版本的 由于没有debug版本动态库 所以你调试的时 ...

  2. Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 (需要在运行时生成core dump文件,QMAKE_CC += -g)

    记录一下 Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 需要在运行时生成core dump文件 首先在pro结尾里加入 QMAKE_CC += -g QMAKE_CXX += - ...

  3. XposedNoRebootModuleSample 不需要频繁重启调试的Xposed 模块源码例子

    XposedNoRebootModuleSample(不需要频繁重启调试的Xposed 模块源码例子) Xposed Module Sample No Need To Reboot When Debu ...

  4. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(6)-Unity 2.x依赖注入by运行时注入[附源码]

    原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(6)-Unity 2.x依赖注入by运行时注入[附源码] Unity 2.x依赖注入(控制反转)IOC,对 ...

  5. 源码方式安装 lrzsz 库

    我们都知道安装了lrzsz工具的linux系统环境: 在shell里可以非常方便的上传和下载linux里面的文件: 通常的安装方式: yum install lrzsz sudo apt-get in ...

  6. 源码方式安装 lrzsz库

    源码方式安装 lrzsz库:https://www.cnblogs.com/cocoajin/p/11731787.html 我们都知道安装了lrzsz工具的linux系统环境,在shell里可以非常 ...

  7. 第6章 RTX 操作系统源码方式移植

    以下内容转载自安富莱电子: http://forum.armfly.com/forum.php 本章教程为大家将介绍 RTX 操作系统源码方式移植,移植工作比较简单,只需要用户添加需要的源码文件即可, ...

  8. centos7下源码方式安装gitlab8.9+发送邮件+ldap

    CentOS7下源码方式安装gitlab 环境描述 操作系统: centos7 redis: >=2.8 mysql >=5.5.14 git >=2.7.4 架构设计 一台gitl ...

  9. win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件

    win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件   1.去git上下载react-devtools文件到本地,https://github.com/fac ...

随机推荐

  1. 创建Akamai cdn api授权

    注:通过Akamai Cli purge和通过Akamai API进行刷新之前,都要事先创建类似于如下的刷新的凭据,这两种刷新方式所创建的凭据是相同的. 目的:创建Akamai CDN API授权以便 ...

  2. SuperEdge 云边隧道新特性:从云端SSH运维边缘节点

    背景 在边缘集群的场景下边缘节点分布在不同的区域,且边缘节点和云端之间是单向网络,边缘节点可以访问云端节点,云端节点无法直接访问边缘节点,给边缘节点的运维带来很大不便,如果可以从云端SSH登录到边缘节 ...

  3. 38、tftp搭建

    38.1.什么是tftp: TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文 件传输的协议,提供 ...

  4. 36、mysql数据库(dml)

    36.1.表记录的增删改: 1.增加表记录: insert[into]tab_name (field1,filed2,.......) values (value1,value2,.......); ...

  5. 关于vue告警 More than 1 blank line not allowed

    开发vue-cli脚手架工程,eslint规范检查工具告警笔记 More than 1 blank line not allowed 代码空格不允许超过1行,把多余的空行删除就可以了

  6. 『无为则无心』Python函数 — 25、Python中的函数

    目录 1.函数的使用 (1)定义函数 (2)调用函数 (3)使用函数的注意事项 2.函数的参数 3.实参的类型 Python函数的说明: Python中函数的应用非常广泛,前面章节中我们已经接触过多个 ...

  7. Dubbo:dubbo管理界面安装

    首先需要Tomcat.Zookeeper安装后在进行安装Dubbo管理界面  提供Dubbo-admin管理界面war包: https://github.com/zhaoyue123ABC/Publi ...

  8. SpringMVC(8)国际化

    在SpringMVC(七)格式化显示中我们讲了数据的格式化显示,Spring在做格式化展示的时候已经做了国际化处理,那么如何将我们网站的其它内容(如菜单.标题等)做国际化处理呢?这就是本篇要将的内容- ...

  9. 26 bash shell中的信号

    当没有任何捕获时,一个交互式 Bash Shell 会忽略 SIGTERM(发送到进程的 TERM 信号用于要求进程终止) 和 SIGQUIT(当用户要求进程执行 core dump 时,QUIT 信 ...

  10. DB2某建表语句

    DB2建表加注解的建表语句 CREATE TABLE table_name ( company CHARACTER(1) NOT NULL DEFAULT 'N', online CHARACTER( ...