Linux开发工具,gcc/g++,makefile文件
2021/6/15 7:22:06
本文主要是介绍Linux开发工具,gcc/g++,makefile文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
gcc/g++ 编译器:gcc/g++ gcc------>c 语言 g++----->c++ 编译一个程序需要经历四个过程 1.预处理 1.1宏替换 1.2头文件展开 1.3去注释 1.4条件编译 gcc/g++ -E [要编译的文件名字] -o [编译后的文件名字].i ⒉编译 1.语法语义的检查 gcc -S [要编译的文件名字] -o [编译后的文件名字].s 将源代码转化为汇编代码 3.汇编 将汇编代码转化为机器代码(二进制代码) gcc -c [要编译的文件名字] -o [编译后的文件名字].o 4.链接 用目标文件+库文件生成可执行程序 4.1静态链接 -static gcc/g++命令行当中,需要增加一个参数:-static 4.2动态连接 默认就是动态连接的。 gdb 1.debug&release ==> -g命令行选项 加 -g是debug版本 3.调试的选项 l (list):查看文件内容。 断点相关 r (run):程序运行起来。 b 行号 :打断点。 i b :查看断点信息。 disable [断点序号]︰使断点失效。 enable[断点序号]:使断点生效。 n(next):逐过程执行--》win : F10。 s(step):逐语句执行--》win : F11。 p[变量名称]:打印变量的值,print bt(back trace):查看调用堆栈 where(与bt 一样) make & makefile 1.make & makefile的解释 2.makefile文件书写的规则 1.make是解释器,解释makefile文件。makefile是书写编译规则的文件。 2.make解释makefile文件,可以自动化构建项目,自动化生成可执行程序。 2.1目标对象&依赖对象&编译命令 2.2 make的解释makefile文件的规则 a.make会在当前目录下找名字叫“Makefile”或“makefile”的文件 b.永远只为生成第一个目标对象而服务 解答:makefile在解释makefile文件时时自顶向下,当我能遇到生成的目标对象时,是不会往后解释的 c.若目标对象相对于依赖对象而言,较新,则不生成,否则继续生成。 d.make在生成第一个目标对象的时候,如果依赖对象也需要后续生成,则先生成依赖对象之后,使用依赖对象生成目标对象。 答:当依赖对象不存在时,会向下找生成依赖对象的方法,并且另一个方法的依赖对象存在,生成目标对象,返回第一目标对象。 2.3伪目标(清理当前工程内容的时候) .PHONY:目标对象 目标对象: 执行命令 (make 伪目标对象的名字)这篇关于Linux开发工具,gcc/g++,makefile文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法
- 2024-08-21【Linux】gnome桌面环境切换KDE Plasma
- 2024-08-19如何安装 VMware Tools (macOS, Linux, Windows)
- 2024-08-15Linux部署Scrapy教程:入门级指南
- 2024-07-29linux命令行下好用的性能监控工具atop
- 2024-07-04Linux系统上离线升级SSH服务的具体操作步骤-icode9专业技术文章分享
- 2024-06-0600-macOS和Linux安装和管理多个Python版本
- 2024-03-30[译]漫画SELinux概念