Linux g++编译与GDB调试完整流程(文末附图)

验证安装
C++

cpp 复制代码
which g++
g++ --version

C

c 复制代码
which gcc
gcc --version

安装

csharp 复制代码
**centOs**:sudo yum install gcc
**centOs**:sudo yum install g++
**ubuntu**:sudo apt-get install gcc
**ubuntu**:sudo apt-get install g++
**kyLin**:sudo pkcon install gcc
**kyLin**:sudo pkcon install gcc-c++

编译链接

单文件编译为程序

cpp 复制代码
g++ -o main main.cpp;//需要链接

多文件编译为程序

cpp 复制代码
g++ -o func1.o -c func1.cpp//独立的,不链接
g++ -o func2.o -c func2.cpp
g++ -o main.o -c main.cpp
g++ -o main func1.o func2.o main.o//需要链接

其它

cpp 复制代码
-I/   包含文件路径,一般为头文件
-L/   库路径 .a 和.so
-g  输出debug程序
-std=c++11 使用C++11标准

GDB 调试

验证安装

cpp 复制代码
which gdb
sudo yum install gdb
sudo apt-get install gdb
sudo pkcon install gdb

调试

cpp 复制代码
l   //显示code,每次10行
r  //运行
b 行号 //打断点
info b  //查看断点信息
d  断点序号 //删除断点
disable b 序号 //禁用断点
enable b 序号 //开启断点
n  //逐过程VS F10
s  //逐语句VS F11
p 变量名 //打印值
display 变量名 //跟踪变量
undisplay 序号 //取消跟踪
finish //执行到函数末尾
c //VS继续执行

实际项目流程:





相关推荐
伏加特遇上西柚30 分钟前
Loki+Alloy+Grafana日志采集部署
java·linux·服务器·spring boot·grafana·prometheus
资源分享助手35 分钟前
三网H5小游戏战车向前冲搭建教程(Win+Linux)
linux·运维·服务器
黑白园44 分钟前
Linux i2c驱动初探(一)待补充
linux
无限进步_1 小时前
Linux权限模型:从rwx到粘滞位
linux·运维·服务器
SWAGGY..2 小时前
Linux系统编程:(一)基础指令详解
linux·运维·服务器
一池秋_2 小时前
etc/sudo.conf is owned by uid 10258, should be 0解决
linux·运维·服务器
dingdingfish2 小时前
TLPI 第19 章 练习:Monitoring File Events
linux·inotify·tlpi·exercise
Bert.Cai2 小时前
Linux basename命令详解
linux·运维·服务器
源远流长jerry2 小时前
Linux 本机网络通信机制深度解析:Loopback 设备原理
linux·运维·服务器·网络·tcp/ip·nginx·负载均衡
源远流长jerry3 小时前
Linux 网络性能优化:从应用到内核
linux·运维·服务器·网络·网络协议·性能优化