toolchain

什么是toolchain

为了生成可执行程序或者库文件,需要编译器链接器等开发工具,编译器将源代码编译为目标文件,链接器将目标文件,库文件链接成可执行文件。这些开发工具的集合称之为toolchain,包括预处理器,编译器,汇编器,链接器和调试器等。

GNU toolchain

用于开发GNU操作系统(Linux系统)上的可执行程序或库文件的工具链

  • ld - the GNU linker.
  • as - the GNU assembler.
  • gcc - the GNU compiler
  • nm - Lists symbols from object files.
  • readelf - Displays information from any ELF format object file.
  • objdump - Displays information from object files.

Ubuntu16.04 toolchain

NDK toolchain

用于开发Android系统上的可执行程序或库文件的工具链

  • aarch64-linux-android-gcc
  • aarch64-linux-android-g++
  • aarch64-linux-android-ar 库管理工具
  • aarch64-linux-android-as 汇编器
  • aarch64-linux-android-ld 链接器

toolchain命名

  • x86_64-linux-gnu-gcc (x86_64架构-Linux内核-GNU操作系统-gcc)
  • aarch64-linux-android-gcc (aarch64架构-Linux内核-Android操作系统-gcc)

Ubuntu等Linux发行版和Android操作系统都是Linux内核;
我们通常所说的Linux操作系统实际上只是内核是Linux内核,其他系统软件都是GNU软件,更确切的说应该是GNU操作系统或者GNU/Linux操作系统

posted @ 2020-02-08 18:02  Cristiano-Duan  阅读(2208)  评论(0编辑  收藏  举报