博客
关于我
基于kali linux c语言编辑,编译,调试
阅读量:204 次
发布时间:2019-02-28

本文共 842 字,大约阅读时间需要 2 分钟。

这里写目录标题

编辑

Vim,Emacs

这里linux下常用编译器就有Vim,Emacs,等,这里用Vim进行编辑

先新建一个文件夹,保存我们的.c文件,后面的编译文件,和可执行文件。
在这里插入图片描述
转到myc文件夹下创建一个test.c文件,并编辑
在这里插入图片描述
vim编辑器的一些常识操作
在这里插入图片描述

在这里插入图片描述

随便写点
在这里插入图片描述

编译

gcc编译套件

在windows下的集成IDE开发环境下编译,我们是先编译.c文件,生成一个.obj文本文件,再通过链接.obj文件生成一个.exe的执行文件,详细的可以看我的这一篇博客:

在linux下一般都安装了一个编译套件gcc,里面就包含了我们编译,链接,在linux下我们也可以按windows下这个流程走

具体操作:

第一步,编译.c文件,生成一个.o(linu下生成的不是.obj而是.o文件)
-c就是通过这个gcc套件只编译的命令
在这里插入图片描述
第二步,链接.o,生成一个.out(linu下生成的不是.exe而是.out文件)
这里会默认将.o文件链接成a.out
在这里插入图片描述
在这里插入图片描述
第三步,执行该程序
在这里插入图片描述
补充
当然gcc还有很多操作
比如 :

gcc test.c //编译链接一起执行,生成一个a.out文件gcc test.c -o exe //意义同上

还有多个文件一起编译链接

test.c
在这里插入图片描述

test1.c

在这里插入图片描述
编译执行
在这里插入图片描述
其余还有一些操作这里不细讲,其他操作可以自行搜索,这里只是简述一下流程及常用操作

makfile ,make,cmake/autotools

makefile的引申,在一个大工程中有很多文件,这些文件的编译链接,不可能像gcc那样写,所以在这提出makefile的写法

在这里插入图片描述
有了makefile的文件,即可通过make(只能找makefile的规则来执行)命令来执行编译,链接操作,生成一个可执行文件。
在这里插入图片描述
在这里插入图片描述

对于makefile的写法,适用环境还是觉得麻烦,从而又引申一些工具

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

所有工具的引申都是为了方便,想要了解的可以自行掉头发

调试

gdb

linux上的程序调试一般都是建立在gdb基础上

转载地址:http://mrfs.baihongyu.com/

你可能感兴趣的文章
mysql加强(4)~多表查询:笛卡尔积、消除笛卡尔积操作(等值、非等值连接),内连接(隐式连接、显示连接)、外连接、自连接
查看>>
mysql加强(5)~DML 增删改操作和 DQL 查询操作
查看>>
mysql加强(6)~子查询简单介绍、子查询分类
查看>>
MySQL单实例或多实例启动脚本
查看>>
MySQL压缩包方式安装,傻瓜式教学
查看>>
MySQL原理、设计与应用全面解析
查看>>
MySQL原理简介—1.SQL的执行流程
查看>>
mysql参考触发条件_MySQL 5.0-触发器(参考)_mysql
查看>>
MySQL及navicat for mysql中文乱码
查看>>
MySqL双机热备份(二)--MysqL主-主复制实现
查看>>
mysql启动以后会自动关闭_驾照虽然是C1,一直是开自动挡的车,会不会以后就不会开手动了?...
查看>>
mysql启动和关闭外键约束的方法(FOREIGN_KEY_CHECKS)
查看>>
Mysql启动失败解决过程
查看>>
MySQL启动失败:Can't start server: Bind on TCP/IP port
查看>>
mysql启动报错
查看>>
mysql启动报错The server quit without updating PID file几种解决办法
查看>>
mysql和oorcale日期区间查询【含左右区间问题】
查看>>
MySQL和SQL入门
查看>>
mysql在centos下用命令批量导入报错_Variable ‘character_set_client‘ can‘t be set to the value of ‘---linux工作笔记042
查看>>
Mysql在Linux运行时新增配置文件提示:World-wrirable config file ‘/etc/mysql/conf.d/my.cnf‘ is ignored 权限过高导致
查看>>