官术网_书友最值得收藏!

Knowing the local.conf file

When we initialize a build environment, it creates a file called build/conf/local.conf, which is a powerful tool that can configure almost every aspect of the build process. We can set the machine we are building for, choose the toolchain host architecture to be used for a custom cross-toolchain, optimize options for maximum build time reduction, and so on. The comments inside the build/conf/local.conf file are a very good documentation and reference of possible variables, and their defaults. The minimal set of variables we probably want to change from the default is the following:

BB_NUMBER_THREADS ?= "${@oe.utils.cpu_count()}"
PARALLEL_MAKE ?= "-j ${@oe.utils.cpu_count()}"
MACHINE ??= "qemux86"

Tip

BB_NUMBER_THREADS and PARALLEL_MAKE should be set to twice the host processor's number of cores.

The MACHINE variable is where we determine the target machine we wish to build for. At the time of writing this book, Poky supports the following machines in its reference Board Support Package (BSP):

  • beaglebone: This is BeagleBone
  • genericx86: This is a generic support for 32-bit x86-based machines
  • genericx86-64: This is a generic support for 64-bit x86-based machines
  • mpc8315e-rdb: This is a freescale MPC8315 PowerPC reference platform
  • edgerouter: This is Edgerouter Lite

The machines are made available by a layer called meta-yocto-bsp. Besides these machines, OpenEmbedded-Core also provides support for the following:

  • qemuarm: This is the QEMU ARM emulation
  • qemumips: This is the QEMU MIPS emulation
  • qemumips64: This is the QEMU MIPS64 emulation
  • qemuppc: This is the QEMU PowerPC emulation
  • qemux86-64: This is the QEMU x86-64 emulation
  • qemux86: This is the QEMU x86 emulation

Other machines are supported through extra BSP layers and these are available from a number of vendors. The process of using an extra BSP layer is shown in Chapter 10, Exploring External Layers.

Note

The local.conf file is a very convenient way to override several default configurations over all the Yocto Project's tools. Essentially, we can change or set any variable, for example, add additional packages to an image file.

Though it is convenient, it should be considered as a temporary change as the build/conf/local.conf file is not usually tracked by any source code management system.

主站蜘蛛池模板: 邵阳县| 新竹市| 郓城县| 北京市| 昌江| 西和县| 芮城县| 常州市| 攀枝花市| 靖边县| 重庆市| 阿勒泰市| 左贡县| 耒阳市| 宣恩县| 会宁县| 丹阳市| 海伦市| 尼勒克县| 迁西县| 浦江县| 莱西市| 公主岭市| 循化| 前郭尔| 绥阳县| 富源县| 普安县| 温宿县| 鸡西市| 玉林市| 繁峙县| 吉首市| 武安市| 全椒县| 周至县| 乐亭县| 革吉县| 陇南市| 铁岭市| 盐城市|