Created attachment 3169 [details] esdk preparing_build_system.log I built an extensible sdk with vanilla poky and MACHINE=quemx86. In local.conf I set DL_DIR as follows: YOCTODIR = "/home/hbruce/yocto" DL_DIR ?= "${YOCTODIR}/downloads" When I run resulting esdk installer I get the error ./poky-glibc-x86_64-core-image-minimal-i586-toolchain-ext-2.1+snapshot.sh -d sdk Poky (Yocto Project Reference Distro) Extensible SDK installer version 2.1+snapshot =================================================================================== You are about to install the SDK to "/home/hbruce/Projects/esdk-test/sdk". Proceed[Y/n]? Y Extracting SDK.....done Setting it up... Extracting buildtools... Preparing build system... ERROR: SDK preparation failed: see /home/hbruce/Projects/esdk-test/sdk/preparing_build_system.log I have attached the log. See you can an error OSError: [Errno 2] No such file or directory: '${YOCTODIR}/downloads/uninative/ea00bc964ab2e30b63ee696529f78640aff3f07e36e871d8e08d3bcc15de8061' I can also see that the installer has created a directory ${YOCTODIR}
This behavior can be avoided by blacklisting DL_DIR (and SSTATE_DIR if it follows the same 'variable within a variable' pattern). Add the following to local.conf SDK_LOCAL_CONF_BLACKLIST_append = " DL_DIR SSTATE_DIR" Thanks for Paul for the fix.
I've sent a patch to blacklist this variable by default since it's the simplest way to handle this - in the much less likely event that someone does want to specify a relative DL_DIR that they *do* want to go into the eSDK, they can whitelist it at the same time.
Fix merged to master: http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=fd436a2b0db152941c7f9dfc8d19ee0f9fc97e77