
正文
linuxwindows交叉编译,linux交叉编译环境搭建
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
什么是交叉编译,为什么要使用交叉编译
1、交叉编译 一般指的是 编译非本地机器上运行的代码。通俗点讲就是 编译其它机器上运行的代码,那些机器的cpu 指令集与编译机器不同,所以编译出来的代码不能直接在编译机上运行。
2、在一个平台架构上,编译另一个平台架构的可执行代码,就是交叉编译。例如在x86架构的PC上编译arm嵌入式设备的可执行程序。
3、简单地说,就是在一个平台上生成另一个平台上的可执行代码。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。
4、那么宿主机需要使用某种特定的交叉编译器,编译出能在目标系统上运行的程序,这就是交叉编译。如你是初学嵌入式Linux,建议你看看ZLG致远电子的开发板,资料比较齐全。
5、编译:从基础到复杂想象一下,你对计算机说出hello world,仿佛在与一个不懂人类语言的机器交谈。其实,是编译器将你的指令转化为它能理解的二进制代码。
6、编译的最主要的工作就是将程序转化成运行该程序的CPU所能识别的机器代码。进行交叉编译的主机称为宿主机,也就是普通的通用计算机,宿主机系统资源丰富,使用方便地集成开发环境和调试工具等。
相关问答
Q1: 为什么交叉编译器要安装在Linux系统下?
1、因为linux之中可以建立交叉编译环境,比如你的linux是64位,你可以建立32位编译环境。另外,linux中也可以编译arm的cpu适用的内核或者程序。
2、所谓交叉编译环境,指的是开发程序的宿主机和目标机为不同平台的开发环境。一般在开发嵌入式linux系统程序过程中,宿主机和目标机为不同的架构,所以需要建立交叉开发环境。
3、采用交叉编译的主要原因在于,多数嵌入式目标系统不能提供足够的资源供编译过程使用,因而只好将编译工程转移到高性能的主机中进行。
4、android的NDK开发需要在linux下进行: 因为需要把C/C++编写的代码生成能在arm上运行的.so文件,这就需要用到交叉编译环境,而交叉编译需要在linux系统下才能完成。
Q2: 如何建立Linux交叉编译环境
1、双方之间一般通过串口,并口或以太网接口建立连接关系。
2、更新环境变量,使设置生效。vmuser@Linux-host ~$source /etc/profile 在终端输入arm-fsl-linux-gnueabi-并按TAB键,如果能够看到很多arm-fsl-linux-gnueabi-前缀的命令,则基本可以确定交叉编译器安装正确,如下图所示。
3、第一步、建立交叉编译环境 没有交叉开发经验的读者,可能一时很难接受这个概念。
Q3: 嵌入式系统开发为什么要采用交叉编译的方式
在一个平台架构上,编译另一个平台架构的可执行代码,就是交叉编译。例如在x86架构的PC上编译arm嵌入式设备的可执行程序。
所谓交叉编译,就是在一种机器结构下编译的软件将在另一种完全不同的机器上运行。典型的交叉编译的例子就是嵌入式系统工程师在自己的个人电脑上编译后的程序将在ARM,MIPS等等嵌入式工作平台上运行。
嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。
所谓交叉编译环境,指的是开发程序的宿主机和目标机为不同平台的开发环境。一般在开发嵌入式linux系统程序过程中,宿主机和目标机为不同的架构,所以需要建立交叉开发环境。
linuxwindows交叉编译的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux交叉编译环境搭建、linuxwindows交叉编译的信息别忘了在本站进行查找喔。






