如何使用yocto配方在目标板上设置环境变量?

时间:2019-07-13 01:03:05

标签: linux bash yocto

我想创建一个称为BOARD的环境变量,该变量设置为Yocto配方中的物理板类型。在实际安装配方期间将不会使用该变量。我还想修改HOME变量。引导后,这些变量需要在板上可访问。这样做的最好方法是什么?

我尝试使用export,但是意识到该命令不会影响父shell。我已经阅读了有关修改dot.profile文件的信息,但是我不想对变量进行硬编码。我希望它根据用来运行位烘焙的MACHINE变量来动态更改该变量。

例如在dot.profile文件中:

export BOARD =“ $ {MACHINE}”

但是,似乎无法访问MACHINE。

1 个答案:

答案 0 :(得分:2)

您可以在图像配方或local.conf中添加类似的内容:

set_board_env(){
    mkdir -p ${IMAGE_ROOTFS}/etc/profile.d 
    echo "export BOARD=${MACHINE}" > ${IMAGE_ROOTFS}/etc/profile.d/set_board_env
}

ROOTFS_POSTPROCESS_COMMAND += "set_board_env;"