我已经接管了一个 Yocto 项目,在一个 .bb 配方文件中,我看到以下几行来在图像中安装新目录:
do_install() {
install -m 0755 -d ${DEPLOY_DIR_IMAGE}/app
install -m 0755 -d ${DEPLOY_DIR_IMAGE}/app/apiary
install -m 0755 -d ${DEPLOY_DIR_IMAGE}/app/lib
install -m 0755 -d ${DEPLOY_DIR_IMAGE}/app/config
install -m 0755 -d ${DEPLOY_DIR_IMAGE}/app/scripts
install -m 0755 -d ${DEPLOY_DIR_IMAGE}/app/keys
这有效,但我很困惑。根据我对 Yocto 和 do_install 的阅读,我认为-m选项仅用于安装文件而不是目录。
使用 install 命令执行install -m 0755 -d以及-m和-d选项的效果是什么?
另外,为什么在我看到的大多数其他目录安装中没有 ${D} 变量?对于这样的问题,我通常不会求助于 Stack Overflow,但是有很多我不理解的不一致之处,并且很难找到答案。