大家好,今天小编关注到一个比较有意思的话题,就是关于交叉编译器有哪些的问题,于是小编就整理了4个相关介绍交叉编译器有哪些的解答,让我们一起看看吧。
编译是从源代码(通常为高级语言)到能直接被计算机或虚拟机执行的目标代码(通常为低阶语言或机器语言)的翻译过程。然而,也存在从低阶语言到高阶语言的编译器,这类编译器中用来从由高阶语言生成的低阶语言代码重新生成高阶语言代码的又被叫做反编译器。也有从一种高阶语言生成另一种高阶语言的编译器,或者生成一种需要进一步处理的的中间代码的编译器(又叫级联)。 典型的编译器输出是由包含入口点的名字和地址, 以及外部调用(到不在这个目标文件中的函数调用)的机器代码所组成的目标文件。一组目标文件,不必是同一编译器产生,但使用的编译器必需采用同样的输出格式,可以链接在一起并生成可以由用户直接执行的可执行程序。
简单的说,如果你开发嵌入式,也就是 *** 小的带MCU(CPU)的智能电子产品。
你必须保证你在电脑上开发编译出的代码,在你的产品上也要能够运行,这时就需要在你的电脑里安装交叉编译工具,实现上述功能。
GNU/Linux系统上常用的编译工具是GCC。
GCC实质上不是一个单独的程序,而是多个程序的 *** ,因此通常称为工具链。
(1)Binutils: 一组用于编译、链接、汇编和其他调试目的的程序,包括ar, as, ld, nm, objcopy, objdump, ranlib, readelf, size, strings, strip等。
(2)gcc : gnu的编译器 *** ,Linux环境正點认的C语言编译器。
(3)glibc: gnu的C语言标准函数库。该库实现Linux系统函数,例如open、read等,也实现标准C语言库,如printf等。几乎所有应用程序都需要与glibc链接。
1.gcc编译器和arm-linux-gcc编译器 === PC上的编译工具:gcc,ld,objcopy,objdump ARM平台上必须使用交叉编译工具:arm-linux-gcc A.一个C/C 文件处理过程: --- 预处理---> 编译 ---> 汇编 ---> 链接 .
GCC是LINUX环境下的编译工具集,是GNU Compiler Collection的缩写,其中包含gcc、g 等编译器及ar、nm等工具集。 GCC工具集不仅能编译C/C 语言,其他如Objective-C、Pascal、Fortran、Java、Ada等语言均能编译。
Google Web Toolkit(GWT Web Toolkit,简写:GWT) ,是一种允许开发人员使用 Java 编程语言快速构建和维护复杂但性能高的 JavaScript 前端应用程序的工具集,能够降低开发难度,尤其是与 Eclipse Google 插件结合使用时,优势更明显。有了 GWT可以使用 Java 编程语言编写 AJAX 前端,然后 GWT 会交叉编译到优化的JavaScript 中,而 JavaScript 可以自动在所有主要浏览器上运行。
到此,以上就是小编对于交叉编译器有哪些的问题就介绍到这了,希望介绍关于交叉编译器有哪些的4点解答对大家有用。