Linux教程

Linux开发工具,gcc/g++,makefile文件

本文主要是介绍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动态连接 默认就是动态连接的。   watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk= 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目标对象&依赖对象&编译命令 watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=   2.2 make的解释makefile文件的规则 a.make会在当前目录下找名字叫“Makefile”或“makefile”的文件 b.永远只为生成第一个目标对象而服务 解答:makefile在解释makefile文件时时自顶向下,当我能遇到生成的目标对象时,是不会往后解释的 c.若目标对象相对于依赖对象而言,较新,则不生成,否则继续生成。 d.make在生成第一个目标对象的时候,如果依赖对象也需要后续生成,则先生成依赖对象之后,使用依赖对象生成目标对象。 答:当依赖对象不存在时,会向下找生成依赖对象的方法,并且另一个方法的依赖对象存在,生成目标对象,返回第一目标对象。   2.3伪目标(清理当前工程内容的时候) .PHONY:目标对象 目标对象: 执行命令 (make 伪目标对象的名字)
这篇关于Linux开发工具,gcc/g++,makefile文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!