很多人对 Linux 下编译调试的印象停留在「敲个 gcc 就能跑」的阶段,等到项目里出现链接错误、段错误、模板报错刷屏,才发现自己其实没搞懂编译和调试这两件事。这门课就是冲这个缺口来的:把 GCC、g++、GDB 三个工具从「会用」拉到「说得清为什么」。
先看清自己缺的是哪一块
如果你写过 C/C++,但出现下面这些情况,说明基础环节有洞:
- 报错信息里出现
undefined reference,第一反应是去搜,而不是判断链接阶段缺了什么。 - 知道
-l和-L都要加,但说不清两者的区别,也不清楚库的搜索顺序。 - 程序崩溃只会加 printf 打印,没系统用过断点、单步、查看调用栈。
- 分不清预处理、编译、汇编、链接分别产出了什么文件,出错时不知道该盯哪一步。
这些不是「高级话题」,而是每天写代码都会撞上的东西。课程从 GNU 与自由软件背景讲起,先把工具链的来龙去脉交代清楚,再落到 GCC 的第一个 hello 程序,避免一上来就背参数。
编译部分:把参数和流程对上号
这门课在编译这块的推进顺序是:先讲清楚 GCC 的编译链接流程,也就是从源文件到可执行文件中间经过哪几个阶段、每步生成什么、-E/-S/-c 各自停在哪一步。理解了这条链路,再看预处理与 -D 选项这类内容就不会觉得是零散技巧——宏定义、条件编译从哪来的、为什么改一个宏会影响另一处代码,都能自己推出来。
g++ 与 GCC 的关系、C 与 C++ 在编译链接上的差异也会涉及。对转岗做测试运维的人来说,重点不在写复杂的 C++,而在于拿到一份用 Makefile 或 CMake 驱动的工程时,能看懂编译命令、能自己手动复现一次编译、能在失败时定位是头文件路径、库路径还是符号缺失的问题。
调试部分:从打印走向 GDB
GDB 这部分是课程里最需要动手跟着练的。看视频时容易被「演示一遍就懂」骗过去,实际自己上手会发现不知道断点下在哪、变量看不了值、栈帧切不动。建议的练法不是照着敲一遍命令,而是找一段自己写过的、曾经靠 printf 排查的代码,改用 GDB 重走一遍排查过程:
- 编译时带上调试信息,观察带与不带调试信息时 GDB 表现的区别。
- 用断点让程序停在出问题的函数入口,逐个查看参数和局部变量的实际取值。
- 崩溃场景下查看调用栈,确认是哪一层调用传入了异常值。
能稳定完成这三步,调试就从「玄学」变成了有路径的操作。
看完应该能回答的问题
- 一个 C 文件从源码到可执行文件,中间经历了哪几步?每步的产物是什么?
- 链接时报符号未定义,通常是哪几类原因?怎么用工具确认是缺库还是缺实现?
- 带调试信息编译和不带,对最终程序有什么影响?为什么发布版本通常不带?
- 程序崩溃时,怎样用 GDB 快速定位到出问题的那一行或那一层调用?
如果这些问题你现在答不利索,这门课值得按顺序过一遍,并且每看完一段就回到终端里敲一次。编译调试这类技能,看会不等于会,手过一遍才算数。
Linux GCC g++ GDB 编译调试入门教程
掌握Linux编译调试核心技能
编辑点评
系统讲解GCC、g++、GDB工具,从基础到进阶,适合初学者及有一定基础的程序员。
⭐ 编辑推荐
本教程深入浅出,从Linux环境搭建到编译器与调试器的使用,助你快速掌握Linux下的编程调试技能。
课程亮点
课程目录
Linux编程之gcc g++ gdb 零基础入门 Linux C C++ 编译器 调试器说明.png [493.5 KB] 5 gcc预处理-D选项.mp4 [42.9 MB] 18 gdb调试器命令使用详解(一).mp4 [166.0 MB] 2 gcc编译器简介与安装.mp4 [33.3 MB] 22 gdb使用gdbserver进行远程调试.mp4 [32.4 MB] 1 GNU操作系统与自由软件简介.mp4 [17.4 MB] 21 gdb附加到进程进行调试.mp4 [29.7 MB] 4 gcc编译链接的流程.mp4 [63.4 MB] 14 gcc编译器优化级别-O选项.mp4 [60.8 MB] 3 gcc编译第一个hello程序.mp4 [39.8 MB] 13 gcc编译器指定C标准-std选项.mp4 [81.4 MB] 19 gdb调试器命令使用详解(二).mp4 [111.7 MB] 16 g++编译器的相关选项.mp4 [35.8 MB] 6 gcc预处理-M -MD -MF选项.mp4 [88.6 MB] 12 gcc将选项传递给链接器-Wl_选项.mp4 [54.2 MB] 8 gcc诊断颜色-fdiagnostics-color选项.mp4 [25.1 MB] 9 gcc搜索头文件目录-I选项.mp4 [37.9 MB] Code.rar [100.6 KB] 20 gdb调试多线程详解.mp4 [105.2 MB] 7 gcc编译警告-Wall选项.mp4 [88.0 MB] 17 gdb调试器简介与安装.mp4 [36.6 MB] 15 gcc编译器调试-g选项.mp4 [44.6 MB] 11 gcc链接库-l与库搜索目录-L选项.mp4 [67.9 MB] 10 gcc生成动态库-fPIC -shared选项.mp4 [24.5 MB] 23 gdb 调试core文件详解.mp4 [28.4 MB]
适合人群
- Linux初学者
- 有一定基础的程序员
- 编程爱好者
学习收获
祝您学习愉快!
学有所成,前程似锦!






