3.1.2.2. 交叉编译器名字中的vendor部分

vendor,即生成厂家,提供商

表示谁提供的,即谁制作出来这个交叉编译器的。

vendor的值,貌似是可以自己随便填写的。

其他常见写法,还有写成编译交叉编译器的作者的自己的名字的

比如,我叫crifan,那么就可以写成crifan,然后生成的交叉编译器,就是xxx-crifan-xxx-xxx了。

更加通用的做法,好像是:

把vendor写成,体系架构的值,比如我之前针对xscale的去配置crosstool-ng的时候,就写了个xscale。

或者写成CPU的厂家的名字,或者是开发板的名字等等。

例 3.2. 举例:交叉编译器中的vendor的值

  • arm-cortex_a8-linux-gnueabi中的cortex_a8,就属于CPU的名字
  • mips-ar2315-linux-gnu中的ar2315
  • powerpc-e500v2-linux-gnuspe中的e500v2,也是CPU的内核名
  • arm-buildroot-linux-uclibcgnueabi中的buildroot,是之前折腾Buildroot时,看到的,即Buildroot把自己视为当前自己制作出来的交叉编译器的vendor。


3.1.2.2.1. crosstool-ng中vendor的值

crosstool-ng中,和vendor对应的值,应该就是"Toolchain options"中的"Tuple's vendor string"的值了。

比如我之前配置为xscale的话,就是:


Toolchain options
  (xscale) Tuple's vendor string

                

对应的配置参数是:CT_TARGET_VENDOR

对应的help的解释是:


  ┌────────────────────────────────── Tuple's vendor string ──────────────────────────────────┐
  │ CT_TARGET_VENDOR:                                                                         │
  │                                                                                           │
  │ Vendor part of the target tuple.                                                          │
  │                                                                                           │
  │ A tuple is of the form arch-vendor-kernel-system.                                         │
  │ You can set the second part, vendor, to whatever you see fit.                             │
  │ Use a single word, or use underscores "_" to separate words.                              │
  │ Use neither dash nor space, as it breaks things.                                          │
  │                                                                                           │
  │ Keep the default (unknown) if you don't know better.                                      │
  │                                                                                           │
  │ Symbol: TARGET_VENDOR [=xscale]                                                           │
  │ Type  : string                                                                            │
  │ Prompt: Tuple's vendor string                                                             │
  │   Defined at config/toolchain.in:99                                                       │
  │   Location:                                                                               │
  │     -> Toolchain options                                                                  │