嵌入式Linux的使用(命令)
用户管理:su、sudo、useradd、userdel
文件管理:Linux一切皆为文件;(-普通文件、d目录文件、c/b设备文件、l链接文件、p管道文件、f堆栈文件、s共享文件)
嵌入式Linux的开发工具-vim、gcc、gdb、makeVim(文本编辑器):学会使用和如何配置vim;
Gcc(编译器):学会制作动态库和静态库及使用与区别;
Gdb(调试器):设置断点、单步执行、调试内存错误;
Make(工程管理器):编写makefile文件。
Linux文本编辑器:vim–功能最强大文本编辑器–摆脱鼠标;Vi-vim-gvim:命令行模式(nyy\p\ndd\)、插入模式(a、i)、嵌入式Linux的开发工具-gcc编译器:gcc(GNU cc)
1.gcc特点(GNU工具、交叉编译器)什么是交叉编译器?在当前CPU平台下编译出在其他COU平台下可执行的代码源文件到可执行文件需要经历哪几个步骤?预处理、编译、汇编、链接(pc:x86)Hello.c gcc hello.c a.out./a.out—>Linux手机(ARM)
※为什么需要交叉编译器
预处理:头文件展开,宏替换,条件编译-E-I-D
编译:将预处理文件编译为汇编文件.s -S
汇编:将汇编文件编译生成目标文件.o -C
链接:建立符号表–可执行文件
a.out
-o重命名可执行文件
“stdio”和的不同:
<>的搜索路径是系统的头文件目录(/usr/include)
“”的搜索路径是先在当目录径查找,找不到再到系统的头文件
一、gcc常用编译选项:
-E -S -c -o -I -D
-Wall -w
-O1 -O2 -O3
二、静态库.a和动态库的制作.so
1、什么库文件?
保存函数和变量(仓库)特点:
保存的函数与变量,只能使用但不能看到其实现。
2、Linux库文件:
静态库:
在编译阶段加载;(将库文件的代码加载到源文件)
动态库:
在运行时加载;
生成的可执行文件存在区别(优缺点)
1)使用静态库生成的可执行文件大于动态库生成的可执行文件(程序运行占用内存较多)
2)使用静态库生成的可执行文件难以升级;使用动态库生成的可执行文件易于升级;
3)使用静态库生成的可执行文件运行速度快;使用动态库生成的可执行文件运行速度慢;
4)使用静态库可执行文件里的代码容易部署;使用动态库可执行文件里的代码难以部署;
3、Linux库文件存放路径:
/lib:存放的系统运行所需要的库;
/usr/lib:存放的是程序运行所需要的库;如何制作静态库?
1、将需要保存的函数所在的文件编译生成目标文件 gcc -c add.c—>add.o
2、静态库的制作工具:ar
ar rcs(不存在就创建,存在就更新) 库名 目标文件名ar rcs libadd.a add.o
3、使用gcc 源文件 -l库名 -L库存放的路径
gcc main.c -ladd -L -o add
如何制作动态库?
gcc -shared -fPIC 源文件 -o libcal.so
gcc -shared -fPIC add.c sub.c -o libcal.so
使用:
cp libcal.so/usr/lib
gcc main.c -lcal
gcc main.c./libcal.so -o cal

2020-03-12相关推荐

  1. E.03.12 For Planet Earth, No Tourism is a Curse and a Blessing

    2021.03.12 文章目录 [课程导读] [英文原文] [外刊原文] [课程导读] 受疫情影响,全球的旅游业几乎陷入停滞,却也给地球环境带来了一些积极影响.比如,二氧化碳的排放量锐减,邮轮引擎造成 ...

  2. 【财经期刊FM-Radio|2020年12月18日】

    title: [财经期刊FM-Radio|2020年12月18日] 微信公众号: 张良信息咨询服务工作室 [今日热点新闻一览↓↓] 刺激希望力撑欧美股市齐涨,美元逾两年半来首次跌破90,比特币大涨首度 ...

  3. 2021考研时间公布 2020年12月26日至27日进行初试

    中新网客户端9月4日电 记者从教育部获悉,2021年全国硕士研究生招生考试初试时间,安排在2020年12月26日至27日(每天上午8:30-11:30,下午14:00-17:00),超过3小时或有使用 ...

  4. 年度数据与月度数据转化_山东工会新媒体传播力指数2020年12月数据、年度数据出炉...

    回顾是为了更好的开始! 山东工会新媒体传播力指数 2020年12月数据.年度数据 出炉啦! 跟工小哥一起来看吧 ↓↓↓ 2020年12月数据 市级总工会 (点击查看大图) 县(市.区)级总工会 (点击 ...

  5. 2020年12月份学习总结,PMP与信息系统项目管理师的回顾

    本文摘录2020年12月份学习总结,创建日期: 2020-12-16 21:05:05,有修改. 2020年下半年的软考高项考试,终于通过了!尽管这并没有什么卵用,一不入户积分.二不评职称.三不涨薪. ...

  6. 2020倩女幽魂服务器正在维修,倩女幽魂手游2020年12月3日维护公告

    在倩女幽魂手游中2020年12月3日更新了哪些有趣的内容呢?想了解本次更新情况的话,下面就来看一下吧~! 倩女幽魂手游2020年12月3日维护公告 <倩女幽魂>手游将于本周四上午进行在线更 ...

  7. 形容人的内核是什么意思_成语雪泥鸿爪是形容什么的?雪泥鸿爪什么意思?蚂蚁庄园2020年12月10日答案...

    斑马线和斑马什么关系?大家都知道斑马和斑马线,但是两者之间有什么关系?蚂蚁庄园12月10日提到了这个问题,我们一起来看看正确答案吧. 问题:斑马线和斑马有什么关系? 答案:横线酷似斑马纹 答案解析:斑 ...

  8. 简述汇编语言中的标号有什么规定_2020年秋季学期《汇编语言》在线考试 (适用于2020年12月份考试)【答案标准】...

    2020年秋季学期<汇编语言>在线考试 (适用于2020年12月份考试) 共29道题 总分:100分 答题中 剩余答题时间:88 : 06 单选题 问答题 论述题 一.单选题 共20题,4 ...

  9. 牧马人机械鼠标g3_性价比好的有线鼠标都有哪些?2020年12款热选游戏鼠标推荐...

    决定一款鼠标好坏因素众多,我们常常发现一款鼠标,有些用户觉得非常好,也有些用户觉得不好,是因为大多数用户对于鼠标的尺寸大小.轻重.实际的手感等方面都会有所不同,这都很正常,所以适合自己才是最好的.那么 ...

  10. 精选| 2020年12月R新包推荐(第49期)

    翻译:黄小伟,资深大数据分析从业者.目前就职杭州有赞数据分析团队! 知乎专栏:中国R语言社区 |11000+关注 知乎圈子:数据分析圈|10000+加入 2020年12月,123个R新包收录于CRAN ...

最新文章

  1. 如何优雅的实现 try/catch 异常块?
  2. yum-fastestmirror模块的使用 提升yum速度的!
  3. 教育的本质是人点亮人
  4. (0022)iOS 开发之@property的属性Weak Strong的深入学习
  5. pug模板引擎(原jade)
  6. 智算中心新基建 浪潮首发智算中心操作系统
  7. unifig,是以基于 SpringCloud 的一个分布式 微服务 平台
  8. SAP FI配置步骤
  9. 关于oracle自动编号
  10. Java常用Linux命令集合
  11. SQLServer中替换某字段的部分内容
  12. Linux制作简版的镜像,手把手教你制作一个精简版Windows10镜像
  13. 中文版GPT3——CPM(2.6B)微调长短文本生成(对应小说歌词)
  14. protobuf根据有关联的.proto文件进行编译
  15. Java官方教程(七-3)Using Objects 使用对象(2021.4.10)
  16. SAP ABAP ME23N 采购订单打印输出
  17. 百度地图API显示车辆运行轨迹并动画展示
  18. 基于KU115的FPGA加速卡
  19. 程序员年底跳槽必备!自动生成10+种简历模板,总有一个适合你
  20. 2022-2028年中国水利工程行业市场行情动态及发展趋向分析报告

热门文章

  1. 在线抢购平台_项目预览
  2. vue修改默认V型图标
  3. 高通modem启动过程_「msm8953」高通8953启动流程 - seo实验室
  4. 什么是TOC约束理论以及TOC系统业务流程
  5. 夜神设置android版本,使用夜神模拟器调试android app
  6. css3实现缺角四边形_CSS3实现缺角矩形,折角矩形以及缺角边框
  7. word整个表格首行缩进_word表格文字首行缩进
  8. c语言结构体函数传递方式,c-将struct传递给函数
  9. ACM比赛代码文件读写调试方案
  10. sumif单列求和_sumif函数使用方法:单条件求和