[系统运维] 【Linux】linux环境基础开发工具使用 |
您所在的位置:网站首页 › linux开发工具的使用 › [系统运维] 【Linux】linux环境基础开发工具使用 |
目录 一、调试器gdb 1、可以使用gdb的可执行文件生成 2、使用命令 1、开始调试和退出调试 2、list 3、类比vs调试 4、代码调试“三剑客” 5、变量 6、断点 二、Linux项目自动化构建工具make/Makefile 1、make和Makefile分别是什么? 2、依赖关系和依赖方法 3、生成方案和清理方案 4、特殊符号 三、git 1、安装git 2、远端创建仓库 3、git“三板斧”上传代码到仓库 一、调试器gdb 1、可以使用gdb的可执行文件生成Linux默认的生成的可执行程序是release版本,需要加-g生成debug版本 release版本是发布版本,不支持调试 例: gcc test.c -o mytest-debug -g?? 生成debug可执行文件 2、使用命令 1、开始调试和退出调试 进入调试:gdb 文件名 推出:ctrl+d / quit(q) 2、list・list/l 行号:显示binFile源代码,接着上次的位置往下列,每次列10行。 ・list/l 函数名:列出某个函数的源代码,含函数名上下各五行 3、类比vs调试・r或run:从开始连续而非单步执行程序遇到断点停下。(相当于vs中的 F5) n 或 next:单条执行。(相当于vs中的F10) ・s或step:进入函数调用(相当于vs中的F11) ・break(b) 行号:在某一行设置断点(相当于vs中的F9) 4、代码调试“三剑客”continue (c):从当前位置开始连续执行,而非单步执行 until x:跳转到x行 finish:执行到当前函数反回,等待下一条命令 5、变量・print§:打印表达式的值,通过表达式可以修改变量的值或者调用函数 ・p 变量:打印变量值。 ・set var:修改变量的值 ・display 变量名:跟踪查看一个变量,每次停下来都显示它的值 ・undisplay:取消对先前设置的那些变量的跟踪 ・info(i) locals:查看当前栈帧局部变量的值 6、断点・break 函数名:在某个函数开头设置断点 ・info break(b) :查看断点信息。 ・delete breakpoints:删除所有断点 ・delete breakpoints n:删除序号为n的断点 ・disable breakpoints:禁用断点 ・enable breakpoints:启用断点 二、Linux项目自动化构建工具make/Makefile 1、make和Makefile分别是什么?Makefile是一个可写的自动化编译文件 make是解释执行Makefile里的命令工具 默认的情况下,make命令会在当前目录下按顺序找寻文件名为“GNUmakefile”、“makefile”、“Makefile”的文件, 找到了解释这个文件 2、依赖关系和依赖方法例如:需要mytest.c编译为可执行文件mytest //mytest依赖mytest.c,这个叫依赖关系 //mytest.c就叫依赖文件,mytest叫生成文件 mytest:mytest.c gcc mytest.c -o mytest 3、生成方案和清理方案 //第一行写依赖关系,第二行写执行规则 //特别注意:第一行顶格,第二行以tab键开头 生成方案: mytest:mytest.c gcc mytest.c -o mytest 清理方案: //.PHONY是设置为伪目标,伪目标的特性是,总是被执行的。 .PHONY:clear clear: rm -f mytest?使用方法如下: 4、特殊符号$@:也可代表生成文件 $^:表示依赖文件 生成方案: mytest:mytest.c gcc mytest.c -o mytest //上述也可写为 生成方案: mytest:mytest.c gcc $^ -o $@ 三、git 1、安装gitsudo yum install git 2、远端创建仓库1、注册gitee账号后,进入页面根据下图建仓库 2、命名仓库,并简单设置属性 3、复制https地址 4、下载项目到本地 git clone [url]url为第三步刚复制的地址 3、git“三板斧”上传代码到仓库 1、git add . //.表示当前目录,也可以上传指定文件 (git add 文件名) 2、git commit -m "上传的代码的日志信息" 3、git push //push所有的本地项目 需要输入gitee的登录账户和密码 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |