实验1。熟悉嵌入式系统的开发环境
1. 熟悉嵌入式开发环境, 掌握实验箱的结构和连接方法。
2. 熟悉Ubuntu 嵌入式系统Linux 开发的基本环境配置方法。
3. 熟悉arm-linux-gcc使用交叉编译器的方法。
4. 熟悉VIM使用方法。
1. 熟悉实验箱与主机的连接方法,掌握Ubuntu中IP共享文件夹的配置方法件夹挂载方法。
2. 学会使用VIM编写程序。
3. 在虚拟机上掌握Ubuntu中编译并执行程序的方法。
4. 在虚拟机上掌握Ubuntu使用交叉编译器编译程序并在实验箱上运行。
5. 掌握编写makefile编译编译程序并在相应的平台下运行。
GNU Compiler Collection,通常简称GCC,是一套由GNU为什么开发的编译器集是编辑器集而不是编译器?这是因为它不仅支持C语言编译,还支持C语言编译C ,Ada,Objective C等许多语言。另外GCC对硬件平台的支持可以无处不在,它不仅支持X86 处理器架构, 还支持ARM, Motorola68000, Motorola8800, AtmelAVR, MIPS等待处理器架构。
GCC主要由内部结构组成Binutils、gcc-core、Glibc由软件包组成。Binutils:它是一组用于目标文件和档案的开发工具,包括连接器、汇编器和其他工具。关于Binutils可参考介绍Binutils简单介绍。该软件包依赖于不同目标机的平台。例如,不同目标机器的指令集是不同的arm跟x86就不一样。
gcc-core:顾明之意是GCC对于其他语言,核心部分只包括C的编译器和公共部分(C 、Ada等)支持包需要单独安装,这也是GCC如此强大的重要原因。gcc-core依赖于Binutils。
Glibc:它包括主要的c库,提供分配内存、搜索目录、读写文件、字符串处理等基本例程。kernel和bootloader 不需要这个库的支持。
交叉编译完全不同的机器结构下,交叉编译(或交叉建立)就是这样一个过程。一个常见的例子是PC基于机器的运行ARM、PowerPC 或MIPS目标机的编译软件。幸运的是,GCC这个过程比听起来小得多。GCC中的一般工具通常都是通过在命令行上调用命令(如gcc)来执行的。这些工具将根据其编译目标命名为交叉编译。例如,应使用交叉工具链ARM
机器编译简单HelloWorld 您可以使用以下命令编译和测试该代码:arm-linux-gcc –o hello hello.c。
arm-linux-gcc是基于ARM交叉编译软件的目标机。x86跟ARM使用的指令集是不同的,所以需要binutils肯定不一样;上面提到的;gcc-core是依赖于binutils的,自然ARM跟x86所使用的gcc-core包也不一样;glibc 一个c 库,最终以库的形式存在于编译器中,自然ARM所使用的glibc 库跟x86 也不一样,依此类推。
1. 参考《DYV-1 嵌入式车载多媒体实验箱快速入门手册将实验箱与主机连接,并配备实验箱IP地址,然后挂载共享文件夹。
2. 使用VIM编写计算n=1 2 3 … 100的和。
3. 在虚拟机Ubuntu编译并执行程序,查看结果。
4. 在虚拟机Ubuntu用交叉编译器编译程序,然后在实验箱上运行。
5. 编写makefile将程序编译成文件,然后在相应的平台下运行。
1. 请描述几种不同Ubuntu的IP设置方法。
2. 请描述实验箱系统的挂载Ubuntu NFS 共享文件夹的步骤。
3. 请总结VIM 的工作模式类型及常用命令。
4. 若想编写一个程序,并且在实验箱里运行。完成该工作,主要分为以下几个步骤?