[bitbake-devel] Bitbake: error in cachedpath.py
Richard Purdie
richard.purdie at linuxfoundation.org
Fri Jun 27 10:58:57 UTC 2014
On Fri, 2014-06-27 at 09:52 +0200, Dr. Markus Eich wrote:
> Dear all,
>
> I am setting up Yocto to compile my kernel for odroid xu. During the
> package phase of building the kernel, I get an error in cachedpath.py
>
> ================
>
> DEBUG: Executing python function sstate_task_prefunc
> DEBUG: Python function sstate_task_prefunc finished
> DEBUG: Executing python function do_package
> DEBUG: Executing python function package_get_auto_pr
> DEBUG: Python function package_get_auto_pr finished
> DEBUG: Executing python function perform_packagecopy
> DEBUG: Python function perform_packagecopy finished
> DEBUG: Executing python function split_and_strip_files
> ERROR: Error executing a python function in
> /home/eich/yocto/poky/meta-odroid/recipes-kernel/linux/linux-hardkernel_3.4.bb:
>
> The stack trace of python calls that resulted in this exception/failure
> was:
> File: 'split_and_strip_files', lineno: 222, function: <module>
> 0218: # End of strip
> 0219: #
> 0220:
> 0221:
> *** 0222:split_and_strip_files(d)
> 0223:
> File: 'split_and_strip_files', lineno: 85, function: split_and_strip_files
> 0081: if debugdir and debugdir in
> os.path.dirname(file[len(dvar):]):
> 0082: continue
> 0083:
> 0084: try:
> *** 0085: ltarget = cpath.realpath(file, dvar, False)
> 0086: s = cpath.lstat(ltarget)
> 0087: except OSError as e:
> 0088: (err, strerror) = e.args
> 0089: if err != errno.ENOENT:
> File: '/home/eich/yocto/poky/meta/lib/oe/cachedpath.py', lineno: 229,
> function: realpath
> 0225: # be printed a backtrace with 100s of OSError
> exceptions
> 0226: # else
> 0227: raise OSError(errno.ELOOP,
> 0228: "too much recursions while
> resolving '%s'; loop in '%s'" %
> *** 0229: (file, e.strerror))
> 0230:
> 0231: raise
> 0232:
> 0233: return file
> Exception: OSError: [Errno 40] too much recursions while resolving
> '/home/eich/odroid/build/tmp/work/odroid_xu-poky-linux-gnueabi/linux-hardkernel/3.4-r0/package/usr/src/kernel/drivers/gpu/arm/mali400/ump/arch/arch-release';
> loop in
> '/home/eich/odroid/build/tmp/work/odroid_xu-poky-linux-gnueabi/linux-hardkernel/3.4-r0/package/usr/src/kernel/drivers/gpu/arm/mali400/ump/arch/arch-release'
>
> DEBUG: Python function split_and_strip_files finished
> DEBUG: Python function do_package finished
> ERROR: Function failed: split_and_strip_files
>
> ====================
>
> Seems that the path is to deep?
>
> To track the error, I have attached my kernel.bb
>
>
> ==================
> require recipes-kernel/linux/linux-yocto.inc
>
> KERNEL_IMAGETYPE = "uImage"
>
> COMPATIBLE_MACHINE = "odroid-xu"
>
> LINUX_VERSION = "3.4.91"
> LINUX_VERSION_EXTENSION = "-custom"
>
> FILESEXTRAPATHS_prepend := "${THISDIR}/linux-hardkernel-3.4:"
>
> S = "${WORKDIR}/git"
>
> # from where to fetch the kernel
> KERNEL_REPO_OWNER ??= "hardkernel"
> KERNEL_REPO_URI ??= "git://github.com/${KERNEL_REPO_OWNER}/linux.git"
> KBRANCH = "odroidxu-3.4.y"
>
> SRCREV = "${AUTOREV}"
>
> SRC_URI = " \
> ${KERNEL_REPO_URI};nocheckout=1;branch=${KBRANCH} \
> file://defconfig \
> "
>
>
> Any ideas ?
It sounds like you have recursive symlinks which just loop between each
other...
Cheers,
Richard
More information about the bitbake-devel
mailing list