需要调试在Docker中运行的混合“ C和C ++”代码

Bla*_*aze 6 c c++ eclipse-cdt docker

到目前为止,我已经能够理解有关docker的以下内容:

  1. 您可以使用它来容器化您的应用程序-沙箱。

  2. 通过“绑定安装”源代码目录并使用容器内的构建工具来构建它,可以将其用作构建容器。

我将docker用于第二个用例。

题:

我有一个包含C和C ++混合组件的项目,我想完全在docker容器中开发,因为它需要大量的环境配置,并且具有旧的库依赖关系,并且我不想污染我的开发环境(主机)机。

我可以使用“ gcc”在docker内部构建它,但是我不知道如何调试它。

我尝试通过网络端口上的gdbserver对其进行调试,并将其进程附加到Eclipse CDT中(在主机上),但是它不会映射回我的源代码,而是显示汇编代码。

我希望将其映射回我的源代码以便于调试。有人可以建议我合适的工作流程或为我指明正确的方向吗?

AVI*_*TTA -2

GDB是Linux下的调试器,可以调试c和c++

您需要做的就是使用-ggdb 选项进行编译./filename

gcc -o test test.c -g

gdb ./test
Run Code Online (Sandbox Code Playgroud)