我的编程空间,编程开发者的网络收藏夹
学习永远不晚

嵌入式linux开发工具怎么用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

嵌入式linux开发工具怎么用

今天小编给大家分享一下嵌入式linux开发工具怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

嵌入式linux开发工具有:1、vim工具,vim是从vi发展出来的一个文本编辑器,有代码补全,编译及错误跳转等方便编程的功能;2、gcc编译器,是由GNU开发的编程语言编译器;3、工程管理器make,make是linux中的工程自动编译管理器等。

嵌入式Linux开发工具

vim的使用

1、文本编辑器:vim +vscode:学会使用并配置vim、安装及使用插件+远程链接vscode

2、编译器gcc:常用编译选项,静态库和动态库的制作和使用

3、调试器gdb:断点调试、查看内存、调试内存错误

4、工程管理器make:编写Makfile,多目录的Makefile 编写

5、shell编程(C语言之后)

6、git版本管理工具(线上:C语言)

7、Cmake(项目)

8、内存检测工具(线上:C语言)

vi/vim/gvim:文本编辑器 gedit emac(脱离鼠标)

  • 适用场景:单文件编辑;vim+插件(高度定制)>IDE

  • vim模式:命令行模式(初次进入,按a,i)、底行模式、插入模式(esc切换为命令行)wq保存退出

  • vim配置(vimc):

修改/etc/vim/vimc文件(行号,缩进风格、鼠标支持)

vim /etc/vim/vimrc

安装插件

  • vim命令的使用:

命令行: yy复制 p粘贴 dd删除 u恢复上一行

底行:查找 /str ?str

替换: 行号或者 %s/old/new/gc

编辑多个文件:vim文件1 文件2 文件3.。

跳转: n 文件名

文件保存 w r

sp+文件名 多文件编写

gcc编译器

<> 和“”区别:搜索路径不同:前者在系统头文件目录《/usr/include》搜索,若没有,就报错

后者在当前目录查找,若没有,再到系统头文件目录查找,若没有,就报错

规范:<>包含系统头文件 “”包含自定义头文件

#if 0 //注释 //#if 1//取消注释
#endif

不同的处理器有不同的汇编

系统内的所有头文件都在 vim/user/include/头文件

  • gcc概述:GNU计划提供的编译器(Unix cc编译器 )(编译工具链 g++ ld ldfd)–>(交叉编译工具链)

  • 什么是交叉编译?.c->.s->.o->elf

在宿主机下编译出在目标机下运行的代码的过程

在当前CPU平台下编译出在其它CPU平台运行的代码的过程

a\源文件到可执行经历了哪几个步骤?(预处理,编译,汇编,链接)
b\预处理的任务:头文件展开(#include)、宏替换(#define)、条件编译(#ifdef)(#开头的代码)
c\编译的任务:检查语法。转成汇编、生成汇编文件(.s/.S)
d\汇编的任务:编译汇编文件,生成目标文件(.o)
e\链接的任务:链接所有目标文件,生成符号表,生成可执行文件

  • 编译选项

-o(可执行重命名:elf格式?)

-E(编译器只进行预处理)

-I:指定头文件编译的第三方路径

-S:进行编译阶段

-c:进行到汇编阶段

-O1 -O2 -O3(编译优化):百度查分别做了什么

-w(关警告) -Wall(开警告) :开关警告信息

库文件

  • 编译器gcc(静态库的动态库的制作和使用)

  • 调试器gdb(常用命名,调用内存错误)

  • 工程管理器make(makefile编写,多目录的Makefile的编写)

extern:该函数在其它文件已经定义

库函数:printf scanf strcpy strcat(保存在库文件)

库文件:保存函数和变量,里面的函数和变量只能使用,但是看不到其实现

库文件分类:静态库(.a) 和动态库(.so)

静态库(.a):保存的函数和变量,在编译阶段加载到可执行文件中

动态库(.so):保存的函数和变量,在执行阶段加载到执行文件中

使用静态库和动态库的区别(可执行文件的区别:)

  • 使用静态库编译出来的执行文件>使用动态库编译出来的可执行文件大小 --影响内存的开销

  • 使用静态库编译出来的执行文件执行速度>使用动态库编译出来的可执行文件执行速度

  • 使用静态库编译出来的执行文件升级<使用动态库编译出来的可执行文件升级

  • 使用静态库编译出来的执行文件程序部署>使用动态库编译出来的可执行文件程序部署

库文件的存放路径:

系统运行所需要的库文件:/lib

第三方软件和工具运行所需要的库:/usr/lib

编译时,编译器会自动到这两个目录里找所需要链接的库文件

制作静态库:

  • 将目标源文件编译成目标文件:gcc -c 目标源文件(可以多个)(gcc -c add.c)

  • 使用ar工具制作静态: ar -rcs(库不存在就创建,存在就更新)所要生成的库文件的名字(lib+库名+后缀.a)目标文件

例:ar -rcs libadd.a add.o

使用静态库:

-l:指定加载哪个静态库 -l库名

-L:指定加载的库文件的存放路径

gcc 源文件 -l库名 -L库存放的路径

例:gcc demo.c -ladd -L./libls

工程管理器make

  • 什么是工程?

多个源文件+其他文件(图片+头文件+脚本文件)

  • 工程管理器的作业:编译多个源文件

gcc +所有源文件 -o 可执行文件 —>自动编译

  • make依赖于Makefile文件;

  • Makefile文件是一种脚本文件(批处理),存在相关语法

  • Makefile语法:

三要素:目标、依赖、命令

格式:

目标:依赖

tab 命令

目标:最终生成的文件

依赖:生成目标时所需要的文件

命令:生成目标时,需要执行的命令

执行顺序:

make:默认从第一个目标体执行

make+ 目标体:从对应的目标体执行

如果目标体后面依赖的文件是一个目标的话,先执行依赖对应的目标,再执行目标体的命令

可以建makefile或者Makefile make -f Makefile -f指定执行那个Makefile

Makefile:

注释: #

目标可以用$@代替

嵌入式linux开发工具怎么用

嵌入式linux开发工具怎么用

嵌入式linux开发工具怎么用

嵌入式linux开发工具怎么用

嵌入式linux开发工具怎么用

多级目录下的Makefile:

  • 顶层Makefile:总控Makefile

  • 子目录Makefile:功能Makefile

  • scripts目录Makefile:头文件Makefile

总控Makefile:进入各个功能子目录下执行make命令,将各个子目录下的.o文件链接成可执行文件

功能Makefile:将当前目录下的.c文件编译生成.o文件

头文件Makefile:定义一些变量

以上就是“嵌入式linux开发工具怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网服务器栏目。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

嵌入式linux开发工具怎么用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

嵌入式linux开发工具怎么用

今天小编给大家分享一下嵌入式linux开发工具怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
2023-03-19

怎么解析linux嵌入式开发

怎么解析linux嵌入式开发,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。很多学习嵌入式的人来说,都会学习嵌入式linux开发,在学习的过程中,总会有很多难题,
2023-06-06

怎样实现linux嵌入式开发

今天给大家介绍一下怎样实现linux嵌入式开发。文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。对于嵌入式开发的流程其实是很简单的,但是里面是有很多小东西需要你注
2023-06-28

初学者怎么学习Linux嵌入式开发

本篇内容主要讲解“初学者怎么学习Linux嵌入式开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“初学者怎么学习Linux嵌入式开发”吧!第一阶段:嵌入式硬件基础以及裸机程序开发1.知识点:
2023-06-28

嵌入式开发人员应该每天使用的五个工具

开发人员使用的工具可以对我们开发的软件的速度、质量和总体成本产生巨大影响。

Linux嵌入式进行python应用开发的方法是什么

本篇内容介绍了“Linux嵌入式进行python应用开发的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本文所演示的平台来自于To
2023-06-28

使用 Rust 进行嵌入式开发

Rust 的高性能、高可靠性和高生产力使它适合于嵌入式系统。在过去的几年里,Rust 在程序员中获得了热情的追捧。技术潮流来来去去,所以很难将仅仅因为某项新技术而产生的兴奋与对某项技术的优点的兴奋区分开来,但我认为 Rust 是一种真正设计

为什么要使用嵌入式Linux?

是什么使Linux成为嵌入式系统的完美候选者?从可伸缩性到嵌入式开发人员支持和工具,有无数的理由可以证明这一点。

Java开发工具Maven怎么用

这篇文章给大家分享的是有关Java开发工具Maven怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Maven如果作为一个Java程序员,那么在日常的开发过程中,maven是很常见的项目构建工具。maven可
2023-06-15

怎么用C++语言做Linux开发工具粘合剂

这篇文章主要讲解了“怎么用C++语言做Linux开发工具粘合剂”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用C++语言做Linux开发工具粘合剂”吧!我想通过“粘合剂”这个词来表达将多
2023-06-16

敏捷开发工具Leangoo 怎么用

这篇文章的内容主要围绕敏捷开发工具Leangoo 怎么用进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!为什么选择 Leangoo?很简单,因为它够简
2023-06-05

electron开发构建工具怎么用

今天小编给大家分享一下electron开发构建工具怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。前言得益于 Vite
2023-06-29

C#开发工具SharpDevelop怎么使用

使用SharpDevelop进行C#开发的步骤如下:1. 安装SharpDevelop:从官方网站(https://www.icsharpcode.net/OpenSource/SD/Download/)下载并安装SharpDevelop。
2023-09-29

MicroEJ 开源用于嵌入式开发的 Kifaru JavaScript 框架

嵌入式和物联网解决方案供应商 MicroEJ 已经将其用于嵌入式开发的 JavaScript 框架 MICROEJ Kifaru 开源。MicroEJ 表示,产品侧的这一补充 \"实现了公司的使命,即向市场上最广泛的应用开发者的生态系统提供了

嵌入式用linux的原因是什么

今天小编给大家分享一下嵌入式用linux的原因是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。原因:1、Linux支持丰
2023-07-02

用 Golang 优化您的嵌入式系统开发

使用 go 优化嵌入式系统开发,可降低内存占用、提高性能和支持跨平台。优化技巧包括:使用 unsafe 包避免内存分配;使用 sync.pool 复用对象减少分配;使用缓冲通道减少同步开销;使用 go 协程提高并发性。用 Go 优化您的嵌入
用 Golang 优化您的嵌入式系统开发
2024-04-08

用于嵌入式计算的流行Linux发行版

在嵌入式系统中工作的嵌入式开发人员需要一个易于使用且易于为其特定硬件定制的发行版。以下是一些最著名的嵌入式计算Linux发行版。然而,这些发行版都没有标准化的“产品更新就绪”方法。如果这是必需的,你需要自己动手。

Linux内核开发工具介绍是怎么样的

本篇文章给大家分享的是有关Linux内核开发工具介绍是怎么样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。众所周知,Linux内核是使用make命令来配置并编译的,那必然少不
2023-06-16

编程热搜

目录