交叉编译和ABI简介

阅读: 评论:0

交叉编译和ABI简介

交叉编译和ABI简介

目录

    • 交叉编译
    • Application Binary Interface
    • References

最近处理一个问题,需要在Ubuntu下使用GCC编译出多个平台版本做验证,发现对交叉编译这块有点模糊。导致工作效率略受影响,因此打算学习一下。

交叉编译

交叉编译器(Cross Compiler)就是一个可以编译在别的平台运行的程序的编译器。例如在Windows上编译安卓APK的编译器就是交叉编译器。
在交叉编译中,通常将编译可执行文件或者库文件的机器称之为构建平台,而将这些可执行文件或者库文件运行的平台称为宿主平台。
导致交叉编译器出现主要有一下几个原因:

  1. 某些设备资源有限无法运行编译器,例如8051单片机,显然不能指望它自己编译程序,它的资源有限到甚至系统都没有;
  2. 需要对一套代码编译出在不同平台运行的版本,比如你想让你的程序可以运行在Windows,Ubuntu,Mac等不同系统,又不想在每一种上配置一遍编译环境;
  3. 可以多台机器联合编译,提高效率;
  4. 为刚出现的机器编译它的系统和编译器等。

交叉编译器,并不是仅仅只有一个编译器,他还涉及链接器、调试器、标准库等等,这些统称为工具链

本文发布于:2024-01-28 03:41:59,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17063845234526.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:简介   ABI
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23