C语言-Ubuntu下GDB与GCC的安装与使用
本文的代码在Ubuntu下演示
安装GCC
1.首先更新软件,这一步必须的,否则百分之百失败,除非科学上网
sudo aptitude safe-upgrade(或者sudo apt-get update)
2.安装GCC(build-essential包自带GCC工具)
sudo aptitude install build-essential
GDB安装
sudo aptitude install gdb
使用GDB之前,编译源程序最好使用-g命令,这样会把源码和程序集成到一起,方便调试,在GCC中是这样子的
gcc 源文件 -g
假设生成的可执行文件是a.out
使用GDB启动程序
shiwentian@LXAJT101017491:~$ gdb ./a.out
显示源代码:l(小写L)
// 首先设置要显示的源码行数(默认10行,基本不够),本例设置了50行
set listsize 50
// 然后使用小写L显示源码,以方便知道自己在哪设置断点
l
设置断点:b
//下面的命令显示在main方法处下断点
b main
//下面的命令显示在源码第3行下断点
b 3
运行程序:r
单步执行:n
直接到下个断点:c
查看变量:p 变量名
// 假设源码int a=7;当该行代码执行完毕,使用p a,则会显示a的值
p a
// 也可以使用一元表达式(取指针)查看指针地址
p &a
C语言-Ubuntu下GDB与GCC的安装与使用相关推荐
- 成功解决Ubuntu下的make: gcc: Command not found Makefile:85: recipe for target 'obj/gemm.o' failed make: **
成功解决Ubuntu下的make: gcc: Command not found Makefile:85: recipe for target 'obj/gemm.o' failed make: ** ...
- Ubuntu下eclipse indigo版在线安装hibernate插件
Ubuntu下eclipse indigo版在线安装hibernate插件: 1.打开eclipse,进入Help->Install new software...: 2.添加新站点,命名为:H ...
- Ubuntu下eclipse indigo版在线安装struts插件
Ubuntu下eclipse indigo版在线安装struts插件: 1.打开eclipse,进入Help->Install new software...: 2.添加新站点,命名为:mvc, ...
- ubuntu下ZED相机开发环境安装
ubuntu下ZED相机开发环境安装 安装设置ROS 安装NVIDIA显卡驱动 安装CUDA 安装ZED SDK(SDK和CUDA的版本需要对应) 安装ZED ROS包 前三步的话在我拿到的机子上已经 ...
- Ubuntu下 stm32 jlink驱动的安装(1)通过JLink烧写、调试STM32
转载地址 https://blog.csdn.net/lc_cc/article/details/66982821 最近在学习RT-thread,想在在LINUX下编译烧写stm32,JLink驱动安 ...
- Ubuntu下Zotero及Docear的安装、插件配置、联合使用
Ubuntu下Zotero及Docear的安装.插件配置.联合使用 最近在做课程的project,免不了要读大量的文献,但是之前一直没有养成良好的文献管理习惯,读完的论文过两天总是要忘记.趁着五一放假 ...
- ubuntu下使用Tesseract-ocr(编译、安装、使用、训练新的语言库)
本文前半部分是来自http://www.qisanfen.com/?p=185的一篇文章,主要讲了安装.训练的大致流程,注意如果需要训练语言库需要把所需要的库安装完整 后半部分大致是官方wiki的翻译 ...
- linux boost 卸载,Ubuntu下boost库的编译安装步骤及卸载方法详解
最近由于编译一个程序用到了C++的boost库,所以便安装了这个库.但是,其中遇到了一些小问题.所以记录下来,以供别人参考. 首先说一下我的环境:Ubuntu 12.04 32bit, gcc 4. ...
- Linux ubuntu下C/C++开发工具安装和开发环境搭建(c/c++,CLion工具)
ubuntu下 C/C++ 开发工具选择和环境搭建 1.开发工具下载及安装 开发工具选用 CLion,进入终端输入 sudo snap install clion --classic 等待执行完成后C ...
最新文章
- Oculus Go 开发者版本开放索取,下个月设备开始配送
- 架构师接龙:百姓网潘晓良VS. 盛大许式伟
- 双栈排序java_双栈排序(Java)
- Can not load “libqxcb.so”
- Java 中 finally 与 return 的执行顺序详解
- mysql dump 拒绝访问_Delphi开发的数据库程序在C:\PDOXUSRS.NET生成文件,拒绝访问及读写权限...
- java session超时判断_详解SpringBoot中Session超时原理说明
- 使用海思烧录工具hitool烧写鸿蒙2.0系统到Hi3516DV300开发板,hitool中没有Hi3516DV300这个芯片如何处理,从哪里找到芯片列表文件更新芯片列表?
- 如何将电脑图片缩小kb?图片怎么压缩大小?
- win10添加网络打印机_Win7系统添加网络共享打印机
- 2018北京网络赛B题 Tomb Raider
- python 实现重启路由器
- 在微信支付宝提现时候对输入框输入值的判断
- 基于 Python 的时序模型——AMIRA模型
- Matlab2018b新特性介绍以及R2018b+waijung blockst 百度云下载链接
- 一个大二老学长的迷茫之路
- 如何快速打造一个高权重的短视频账号?短视频运营推广日记(2)
- 同时设置min-height和max-height后el-scrollbar滚动监听失效?
- 白加黑木马拆分HTTP协议躲避网络单包侦测
- halcon—利用顶帽操作减轻图像灰度不均匀对二值化的影响
热门文章
- STM32中的串口通信
- 南开大学滨海学院计算机科学系,【公示】南开大学滨海学院2019届“优秀毕业生”、“十佳毕业生” 评选结果公示...
- MySQL抛出 Lock wait timeout exceeded; try restarting transaction
- Spring Boot整合Swagger3
- java redirect 超时_会话超时后,Spring安全性不会重定向到上次请求的页面登录
- thymeleaf引用html_SpringBoot+Thymeleaf实现html文件引入(类似include功能)_html/css_WEB-ITnose...
- 500并发 一台服务器的性能_面试官绝杀:系统是如何支撑高并发的?
- 火狐浏览器jtopo节点切换tab后消失报错NS_ERROR_FAILURE的解决
- 移动设备 计算机设备,移动设备
- Android开发笔记(七十七)图片缓存算法