yocto-poky
关键词: yocto poky
poky工程,结构分析,源码分析
主要内容:
- poky
- poky 环境配置脚本
文档参考:
最新文档 https://taotaodiy-yocto.readthedocs.io/en/latest/yocto/yocto-demo.html
官方工程
源码分析 - 环境配置脚本
oe-init-build-env脚本
在这个脚本中,检查了脚本的启动,并运行oe-buildenv-internal和oe-setup-builddir。
# 检查脚本启动
if [ -n "$BASH_SOURCE" ]; then
THIS_SCRIPT=$BASH_SOURCE
elif [ -n "$ZSH_NAME" ]; then
THIS_SCRIPT=$0
else
THIS_SCRIPT="$(pwd)/oe-init-build-env"
if [ ! -e "$THIS_SCRIPT" ]; then
echo "Error: $THIS_SCRIPT doesn't exist!" >&2
echo "Please run this script in oe-init-build-env's directory." >&2
exit 1
fi
fi
if [ -n "$BBSERVER" ]; then
unset BBSERVER
fi
if [ -z "$ZSH_NAME" ] && [ "$0" = "$THIS_SCRIPT" ]; then
echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'" >&2
exit 1
fi
if [ -z "$OEROOT" ]; then
OEROOT=$(dirname "$THIS_SCRIPT")
OEROOT=$(readlink -f "$OEROOT")
fi
unset THIS_SCRIPT
# 运行脚本 oe-buildenv-internal 和 oe-setup-builddir
export OEROOT
. $OEROOT/scripts/oe-buildenv-internal &&
TEMPLATECONF="$TEMPLATECONF" $OEROOT/scripts/oe-setup-builddir || {
unset OEROOT
return 1
}
unset OEROOT
[ -z "$BUILDDIR" ] || cd "$BUILDDIR"
oe-buildenv-internal
在这个脚本中进行变量检查,python版本检查,设置BUILDDIR、PATH、BB_ENV_EXTRAWHITE等变量
#检查变量
if ! $(return >/dev/null 2>&1) ; then
echo 'oe-b