Linux下的开发工具:vim,gcc,gdb,makefile以及yum语句安装软件

Linux下的开发工具:vim,gcc,gdb,makefile以及yum语句安装软件

1. vi/vim

 vi/vim都是多模式编译器,vim是vi的升级版本。vim有12个模式,在这我们先说3种模式,命令模式,插入模式,底行模式。

2. vim基本操作:

$vim test.c进入命令模式,输入a/i/o进入插入模式,esc由插入模式进入命令模式,shift+;[:]由命令模式进入末行模式,退出vim可以用[:q](退出当前文件)、[:w](保存当前文件)、[:wq](保存并退出当前文件)、[:q!](强制退出当前文件)、[:wq!](强制保存并退出当前文件)

3. vim命令模式命令集:

  1. 【i】进入插入模式,光标即当前位置,开始输入文件内容;
  2. 【a】进入插入模式,从光标所在位置的下一个位置开始输入文件内容;
  3. 【o】进入插入模式,插入新的一行,从行首开始输入文件内容;
  4. 【h】【j】【k】【l】分别控制光标左、下、上、右;
  5. 【G】光标移至文章末尾;
  6. 【$】光标移至所在行的行尾;
  7. 【^】光标移至所在行的行首;
  8. 【w】光标移至下个字的开头;
  9. 【e】光标移至下个字的字尾;
  10. 【b】光标移至上个字的开头;
  11. 【gg】光标移至文本开始;
  12. 【x】删除光标所在位置的一个字符;
  13. 【X】删除光标所在位置前一位置的一个字符;
  14. 【#x】删除光标所在位置的后面#个字符;
  15. 【#X】删除光标所在位置的前面#个字符;
  16. 【dd】删除光标所在行/剪切;
  17. 【#dd】删除从光标所在行开始#行;
  18. 【yw】将光标所在之处到字尾的字符复制到缓冲区中;
  19. 【yy】将光标所在行复制到缓冲区中;
  20. 【p】粘贴到光标处;
  21. 【u】撤销;
  22. 【r】替换光标所在之处的字符;
  23. 【R】替换光标所到之处的字符,直到【esc】为止;
  24. 【ctrl+r】撤销恢复;
  25. 【cw】更改光标所在之处的字符至字尾;
  26. 【#G】移动光标至第#行行首;

4.底行模式命令集:

  1. esc+:】进入末行模式;
  2. 【set nu】列出行号;
  3. 【#】光标跳至第#行行首;
  4. 【/关键字】从光标处向下查询关键字直到找到为止;
  5. 【?关键字】从光标处向上查询关键字直到找到为止;
  6. 【w】保存文件;
  7. 【q】退出文件;
  8. 【wq】保存并退出文件;
  9. 【q!】强制退出文件;

5.vim的配置:

参考如下:https://mp.csdn.net/postedit/83015344

6.编译器gcc/g++:

  1. 预处理(宏替换)gcc -E test.c -o test.i
  2. 编译(生成汇编)gcc -S test.i -o test.s
  3. 汇编(生成机器可识别代码)gcc -c test.s -o test.o
  4. 连接(生成可执行文件或库文件)gcc test.o -o test

7.gcc的使用:

  1. 【gcc -static】对生成的文件采用静态连接;(动态链接:进入库函数调用并返回;静态链接:直接拷贝源代码并使用)
  2. 【gcc -g】生成调试信息;
  3. 【gcc -w】不生成任何警告信息;
  4. 【gcc -W】生成所有警告信息;

8.调试器gdb:

扫描二维码关注公众号,回复: 3889486 查看本文章
  1. gcc生成的可执行程序不可调试,默认以release发布;
  2. 需要调试时,必须在生成二进制程序的时候加上-g选项;
  3. 【gdb+可执行文件】进入调试;

9.gdb的使用:

  1. 【ctrl+d】/【quit】退出调试;
  2. 【list/l】显示源代码;
  3. 【r/run】运行程序;
  4. 【n/next】单条执行;
  5. 【s/step】进入函数调用;
  6. 【b/break+n】在第n行设置断点;
  7. 【info break】查看断点信息;
  8. 【finish】执行到当前函数返回,然后停下来等待命令;
  9. 【print/p】打印表达式的值,通过表达式可以改变量的值或调用函数;
  10. 【p+变量】打印变量值;
  11. 【set var】改变变量的值;
  12. 【continue/c】从当前位置开始连续而非单步执行程序,即到达下一个断点;
  13. 【delete breakpoints+n】删除序号为n的断点;
  14. 【disable breakpoints】禁用断点;
  15. 【enable breakpoints】启用断点;
  16. 【display+变量名】跟踪查看一个变量,每次停下来都显示它的值,即常显示;
  17. 【undisplay】取消对先前的变量的跟踪;
  18. 【until+X】跳至第X行;
  19. 【breaktrace/bt】查看各级函数调用及参数;
  20. 【info/i locals】查看当前栈帧局部变量的值;

10.自动化构建工具make/makefile:

  1. make是一条命令,makefile是一个文件,两者搭配使用,完成自动化构建;
  2. makefile包含依赖关系和依赖方法,有依赖关系就必须有依赖方法,缺一不可;
  3. make生成文件看修改时间;
  4. .PHONY修饰,伪目标总是被执行;
  5. 以下是一个简单的makefile文件:
test:test.o
        gcc test.o -o test
test.o:test.s
        gcc -c test.s -o test.o
test.s:test.i
        gcc -S test.i -o test.s
test.i:test.c
        gcc -E test.c -o test.i

.PHONY:clean
clean:
        rm -f test.i test.s test.o test

11.yum

  1. 使用root用户,用yum下载软件包;
  2. 【yum install+软件包】下载软件;
  3. 【yum remove+软件包】卸载软件;
  4. 在/etc/yum.repos.d/目录下可更新yum源,将CentOS-Base.repo里的内容替换成你想要内容,可在网上去搜索相关yum源,替换后,【yum makecache】即可完成yum源的替换。

猜你喜欢

转载自blog.csdn.net/Jochebed666/article/details/82970847