Linux基础开发工具

目录

基础开发工具

包管理器

yum

apt

vim编辑器

gcc/g++编译器

自动化构建

make

Makefile/makefile

Git

调试器------gdb/cgdb


只有认知的突破 💫才能带来真正的成长 💫编程技术的学习 💫没有捷径 💫一起加油💫

🍁感谢各位的观看 🍁欢迎大家留言 🍁咱们一起加油 🍁努力成为更好的自己🍁

基础开发工具

包管理器

yum

作用:适用于Sentos系统的"软件商店"。

  • 下载软件:对于root用户------yum install -y +目标软件。对于普通用户------sudo yum install -y +目标软件。

  • 卸载软件:对于root用户------yum remove -y +目标软件。对于普通用户------sudo yum remove -y +目标软件。

apt

作用:适用于Ubuntu系统的"软件商店"。

  • 下载软件:对于root用户------apt install -y +目标软件。对于普通用户------sudo apt install -y +目标软件。

  • 卸载软件:对于root用户------apt remove -y +目标软件。对于普通用户------sudo apt remove -y +目标软件

vim编辑器

作用:是一个写代码的编辑器。用法:vim + 目标文件。

  • 命令模式

  • 插入模式

  • 底行模式

三者之间的关系,如下图所示。

gcc/g++编译器

作用:用来编译代码的工具。gcc只编译C语言,g++既可以编译C语言,也可以编译C++语言。

编译代码的指令:gcc/g++ -o 目标文件 源文件。

预处理,编译,汇编和链接的指令如下:

  • 预处理:去掉注释,条件编译,展开头文件,宏替换。指令:gcc -E ,生成.i文件。

  • 编译:生成汇编代码。指令:gcc -S,生成.s文件。

  • 汇编:把汇编代码生成二进制代码。指令:gcc -c,生成.o文件。

  • 链接:链接所有的.o文件和相关的库文件。指令:gcc,生成.exe文件。

自动化构建

make

make是一条指令,它是用来自动化构建项目的一个工具,自动化编译和链接等。它的自动化构建依赖Makefile/makefile配置文件。

#指令如下 make Makefile/makefile

Makefile/makefile

这俩是配置文件,至于名字是不区分大小写的。对你的项目,进行自动化构建流程配置。总结:make是一个自动化构建的工具,makefile是这个自动化构建所需的配置,只有make和makefile结合,才能完成整体的自动化构建。

对于makefile里面常用的配置解释。

复制代码
BIN=proc.exe # 定义变量 
CC=gcc 
SRC=$(wildcard *.c) # 或者使⽤ wildcard 函数,获取当前所有.c⽂件名 
OBJ=$(SRC:.c=.o) # 将SRC的所有同名.c 替换 成为.o 形成⽬标⽂件列表 
LFLAGS=-o # 链接选项 
FLAGS=-c # 编译选项 
RM=rm -f # 引⼊命令 

$(BIN):$(OBJ) 
    @$(CC) $(LFLAGS) $@ $^ # $@:代表⽬标⽂件名。 $^: 代表依赖⽂件列表 
    @echo "linking ... $^ to $@" 
    
%.o:%.c # %.c 展开当前⽬录下所有的.c。 %.o: 同时展开同名.o 
    @$(CC) $(FLAGS) $< # %<: 对展开的依赖.c⽂件,⼀个⼀个的交给gcc。 
    @echo "compling ... $< to $@" # @:不回显命令 
    
.PHONY:clean 
clean: 
    $(RM) $(OBJ) $(BIN) # $(RM): 替换,⽤变量内容替换它 
  
.PHONY:test 
test: 
    @echo $(SRC) 
    @echo $(OBJ)

Git

是一个文件版本控制器,它具有网络的功能,能把代码给托管到代码云平台上。常用的指令如下:

  • git add "目标文件"。把工作区的代码,给加载到git的暂存区。

  • git commit -m "提交信息"。把暂存区的代码,加载到git本地仓库里面。

  • git push。把git本地仓库的代码。提交到远程仓库里面。

调试器------gdb/cgdb

这俩就是调试代码用的,这俩的使用指令都是一样的。对于gdb,进入代码调试的时候,它不会直接显示代码。对于cgdb,进入代码调试的时候,它会直接显示代码。所有,我们用cgdb更多一些。这里就着重介绍一下这个调试器。

注意:gcc/g++编译的代码默认是release版本的,在进行调试代码之前,需要被调试的代码必须是Debug模式编译的,所以需要在编译代码指令的后面加上-g

代码调试常用的指令如下所示:

复制代码
cgdb + 目标文件     #进入代码调试阶段
break/b + 行号     #在某行打上调试断点
break/b + 函数名    #在函数开头打上断点
r/run              #运行程序,开始调试
info break/b        #查看当前所有断点
delete/d + 断点的序号 #删除指定的断点
display + 变量名      #追踪并显示对应的变量
until + ⾏号         #执⾏到指定⾏号
quit                #退出cgdb调试
set var 变量=值   #修改变量的值  set var i=10
n/next      #逐过程
s/step      #逐语句
相关推荐
楠奕24 分钟前
CentOS7安装GoldenDB单机搭建及常见报错解决方案
linux·运维·服务器
爱学英语的程序员29 分钟前
Git 提交 LF will be replaced by CRLF the next time Git touches it 报错
git
GCTTTTTT1 小时前
远程服务器走本地代理
运维·服务器
剑锋所指,所向披靡!1 小时前
Linux常用指令(2)
linux·运维·服务器
qq_339191141 小时前
服务器git pull每次都要输入密码,linux 设置git登录,linux设置git只输入一次账户密码
git
做咩啊~1 小时前
6.增加一个flat网段
服务器·openstack
不愿透露姓名的大鹏1 小时前
Oracle归档日志爆满急救指南
linux·数据库·oracle·dba
W.W.H.1 小时前
嵌入式常见的面试题1
linux·网络·经验分享·网络协议·tcp/ip
木白CPP1 小时前
DMA-Buffer内核驱动API文档
linux
HXQ_晴天2 小时前
Linux 系统的交互式进程监控工具htop
linux·服务器·网络