linux下C++程序的编译编辑和调试基础知识(g++,makefile,gdb)

本文介绍了在Linux系统中使用g++、makefile和gdb进行C++程序的编辑、编译和调试。内容涵盖g++的基础用法,包括编译release和debug模式;makefile的编写,从基础到高级版本,用于自动化编译过程;以及gdb调试器的使用,如设置断点、运行和单步执行等。
摘要由CSDN通过智能技术生成

编辑:用记事本 或vim 等

编译:用g++ 或 makefile

调试: gdb  (gdb是比较粗糙的调试器)

一、g++的使用

      1.  g++  test.cpp   这样是不能编译的,除非test.cpp的含义是指所有的文件,包括链接文件。

           其实和windows下编译程序一样,windows编译程序时,每一个cpp会生成对应的一个obj,有多少个cpp就会生成多少个obj,然后这些obj文件又会链接成为一个exe文件,整个过程就结束了。 linux下编译也类似,因此不能用g++ test.cpp这样的方式编译成功,除非test.cpp的含义是指所有的文件,包括链接文件。因为g++ test.cpp这句命令的意思是说:编译并且链接test.cpp,编译完了马上就会去链接。而一个cpp文件是不能生成执行文件的,甚至有可能连main函数都找不到(main函数在另外的Cpp里)

      2.     g++  -c   test.cpp    编译release模式,编译后的结果为 test.o

              g++ -c -g  test.cpp   编译debug模式,大小约是release模式的两倍

              g++ *.o   -o run.exe  把所有的.o文件链接为run.exe,或者g++   -o run.exe  *.o 也可。 -o 和run.exe始终要在一起,他们俩可以在最末尾,也可以在g++后面

 二、makefile的编写和使用

    假设现在有Admin.cp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值