Linux C编译器

gcc介绍

image.png
image.png

gcc编译过程

image.png
image.png
image.png
image.png
image.png
image.png

静态库、动态库

静态库

image.png
image.png
image.png
static.zip

动态库

image.pngimage.png

dynamic.zip

gcc的工具

as

image.png
as main.S -o main.o这个命令和gcc编译过程中汇编过程gcc main.S -c -o main.o是一样的

ld

image.png
image.png
image.png
image.png

ar

image.png
image.png

linux调试器

gdb介绍

image.png
image.png
image.png

简单调试

gdb插件(加-g才能调试)

image.png
image.png

  1. echo "source ~/GdbPlugins/peda.py" > ~/.gdbinit
  2. echo "source ~/GdbPlugins/gef.py" > ~/.gdbinit
  3. echo "source ~/GdbPlugins/gdbinit.py" > ~/.gdbinit

启动完插件之后,运行gdb main就可以调试了image.png

DDD调试器

  1. //需要删掉原来的gdb插件
  2. rm ~/.gdbinit
  3. apt-get install ddd

image.png
image.png

edb

image.png
具体使用方法:https://github.com/eteran/edb-debugger/wiki/Compiling-(Ubuntu))