iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >嵌入式linux开发工具怎么用
  • 848
分享到

嵌入式linux开发工具怎么用

linux 2023-03-19 17:03:03 848人浏览 泡泡鱼
摘要

今天小编给大家分享一下嵌入式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开发工具怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网服务器栏目。

--结束END--

本文标题: 嵌入式linux开发工具怎么用

本文链接: https://www.lsjlt.com/news/200185.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • 嵌入式linux开发工具怎么用
    今天小编给大家分享一下嵌入式linux开发工具怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解...
    99+
    2023-03-19
    linux
  • 怎么解析linux嵌入式开发
    怎么解析linux嵌入式开发,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。很多学习嵌入式的人来说,都会学习嵌入式linux开发,在学习的过程中,总会有很多难题,...
    99+
    2023-06-06
  • 怎样实现linux嵌入式开发
    今天给大家介绍一下怎样实现linux嵌入式开发。文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。对于嵌入式开发的流程其实是很简单的,但是里面是有很多小东西需要你注...
    99+
    2023-06-28
  • 初学者怎么学习Linux嵌入式开发
    本篇内容主要讲解“初学者怎么学习Linux嵌入式开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“初学者怎么学习Linux嵌入式开发”吧!第一阶段:嵌入式硬件基础以及裸机程序开发1.知识点: &...
    99+
    2023-06-28
  • Go 嵌入式开发
    嵌入式 go 开发使用 go mod init 创建项目。指定目标架构进行交叉编译:goos 和 goarch。使用 runtime/cgo 和 runtime/volatile 与硬件...
    99+
    2024-04-08
    go 嵌入式开发 linux golang
  • 【Linux】Linux开发工具(一)——vim工具
     作者:一个喜欢猫咪的的程序员  专栏:《Linux》 喜欢的话:世间因为少年的挺身而出,而更加瑰丽。                                  ——《人民日报》 目录  1.什么是vim 1.1什...
    99+
    2023-09-04
    linux 运维 服务器
  • 详解VisualS tudio Code开发Arm嵌入式Linux应用
    By Toradex胡珊逢 Visual Studio Code 在软件开发领域具有十分广泛的应用,其支持多种编程语言,丰富的插件极大得提高了开发效率,同时这也是一个非常开...
    99+
    2024-04-02
  • Linux嵌入式进行python应用开发的方法是什么
    本篇内容介绍了“Linux嵌入式进行python应用开发的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本文所演示的平台来自于To...
    99+
    2023-06-28
  • Java开发工具Maven怎么用
    这篇文章给大家分享的是有关Java开发工具Maven怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Maven如果作为一个Java程序员,那么在日常的开发过程中,maven是很常见的项目构建工具。maven可...
    99+
    2023-06-15
  • 【Linux】基础开发工具使用 --- gcc
    目录 预处理 编译 汇编 链接 函数库 协助记忆 🧋GCC(GNU Compiler Collection)是由GNU开发的编程语言编译器。GNU编译器套件包括C、C++、 Objective-C、 Fortran、Jav...
    99+
    2023-09-09
    linux 运维 服务器
  • Linux开发工具和Windows开发工具对比的示例分析
    这篇文章给大家分享的是有关Linux开发工具和Windows开发工具对比的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Linux开发工具就C++开发工具而言,与Windows下微软(VC, VS2005...
    99+
    2023-06-16
  • electron开发构建工具怎么用
    今天小编给大家分享一下electron开发构建工具怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。前言得益于 Vite ...
    99+
    2023-06-29
  • C#开发工具SharpDevelop怎么使用
    使用SharpDevelop进行C#开发的步骤如下:1. 安装SharpDevelop:从官方网站(https://www.icsh...
    99+
    2023-09-29
    C# SharpDevelop
  • 怎么用C++语言做Linux开发工具粘合剂
    这篇文章主要讲解了“怎么用C++语言做Linux开发工具粘合剂”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用C++语言做Linux开发工具粘合剂”吧!我想通过“粘合剂”这个词来表达将多...
    99+
    2023-06-16
  • python开发工具pycharm快速入
    本教程是关于什么的本教程旨在引导您完成创建,运行和调试一个简单的Python项目,使用PyCharm一步一步 - Python的IDE有一整套完整的生产性的开发工具。本教程不是关于哪些的Python编程超出了本教程的范围。要了解更多关于Py...
    99+
    2023-01-31
    开发工具 快速 python
  • 敏捷开发工具Leangoo 怎么用
    这篇文章的内容主要围绕敏捷开发工具Leangoo 怎么用进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!为什么选择 Leangoo?很简单,因为它够简...
    99+
    2023-06-05
  • jsp用什么开发工具
    JSP(JavaServer Pages)可以使用多种开发工具进行开发,以下是一些常用的工具:1. Eclipse:Eclipse ...
    99+
    2023-08-28
    jsp
  • 用 Golang 优化您的嵌入式系统开发
    使用 go 优化嵌入式系统开发,可降低内存占用、提高性能和支持跨平台。优化技巧包括:使用 unsafe 包避免内存分配;使用 sync.pool 复用对象减少分配;使用缓冲通道减少同步开...
    99+
    2024-04-08
    golang 嵌入式系统 内存占用
  • php用什么开发工具
    php可以使用以下开发工具:ZendStudio是除了支持php开发,还支持HTML、js、CSS等,但只对php语言提供调试支持的php语言集成开发环境。EclipsePHP是一个大型php项目开发编译器,基于Eclipse底层开发而来,...
    99+
    2024-04-02
  • vue.js用什么开发工具
    vue.js可以用vscode开发工具,vscode是微软出的一款轻量级代码编辑器,对JavaScript和NodeJS的支持非常好,功能强大,如果想开发vue还需要下载插件,操作步骤如下:进入vscode官网插件商店,地址:“https:...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作