姓名:徐哲 学号:19029100016 学院:电子工程学院
引自:https://blog.csdn.net/qq_41035588/article/details/92002740
【嵌牛导读】本文介绍了嵌入式的知识点
【嵌牛鼻子】嵌入式系统模式
【嵌牛提问】何为嵌入式开发模式?
【嵌牛正文】
一、交叉开发模式
1、组成结构
(1)宿主机:开发主机,一般由PC、发行版linux系统、开发工具(本地及交叉编译)(代码编辑器Vi,编译器GCC、调试器GDB、工程管理器MAKE、NFS等)组成;
(2)目标机:嵌入式系统,一般由ARM硬件、BOOTLOADER、内核、根文件系统构成;
(3)连接工具:串口线、网线、USB线等。
2、理解编译工具链与交叉编译工具链的异同
(1)相同点:
① 用于支持的语言的编译、链接与调试,编译器用法相同;
② 通常都有编译器、链接器、调试器、库及其他二进制工具构成。
(2)不同点:
① 编译工具链一般用于本机编译、本机执行的开发模式;
② 交叉编译工具链用于宿主机编译,目标机运行的交叉开发模式;
③ 编译器一般Linux发行版都配备,直接调用gcc命令即可;
④ 交叉编译器一般需根据宿主机软硬件环境,进行gcc、相关库、工具进行有针对性的定制。
⑤ 实验室使用的OK6410开发板定制的编译器为32位的,其交叉编译工具链主要arm-linux-gcc,arm-linux-g++arm-linux-gdb等构成。
二、开发工具的用法
1、Vi的工作模式及其切换-掌握使用Vi完成源代码编辑、保存及退出的常见按键操作;
2、GCC:GNU Compiler Collection,GUN编译器套件,特点:
① 支持绝大多数高级语言的编译,既支持传统的C/C++,Fortan,Objective-C ,也支持java,python,go等语言;
② 支持汇编语言;
③ 支持绝大多数的主流处理器平台;
④ 便于构建交叉编译工具链。
3、gcc/arm-linux-gcc用法:
① 基本用法:gcc hello.c;arm-linux-gcc hello.c;输出a.out
② 推荐用法:gcc hello.c -o hello/arm-linux-gcc hello.c -o hello ,可以指定输出文件名称;
③ 主要的编译参数
-Wall 打印全部警告信息;
-O{0-3,s} 支持代码优化,0无优化;
-g 支持gdb调试;
-lpthread 支持多线程。
4、make及Makefile
(1)make:工程管理器,利用执行Makefile文件实现工程管理(编译、链接、生成工程镜像、安装、清理、卸载等);
(2)make用法:编写Makefile,在终端下执行make命令即可。
(3)Makefile文件编写示例
作者album
链接:https://blog.csdn.net/qq_41035588/article/details/92002740
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。