[OE-core] [Patch v2 1/1] kernel.bbclass: enable a link for external module building

Tom Zanussi tom.zanussi at intel.com
Tue Nov 4 23:25:32 UTC 2014


On Tue, 2014-09-30 at 14:40 -0700, nitin.a.kamble at intel.com wrote:
> From: Nitin A Kamble <nitin.a.kamble at intel.com>
> 
> Even though the kernel-dev package provides the required support for
> building external kernel modules on the target, some commonly used scripts
> and utilities fail as they are not finding the kernel module build support
> files at the desired location.
> 
> Create the /lib/modules/<kernel-version>/build link on target pointing to
> the sources provided by the kernel-dev package, to fix the issue.
> 
> Fixes Bug:
> [YOCTO #2968]
> 

I just updated my dizzy branch and am getting this when building a
kernel with no modules:

Build Configuration:
BB_VERSION        = "1.24.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Fedora-19"
TARGET_SYS        = "i586-poky-linux-uclibc"
MACHINE           = "galileo"
DISTRO            = "poky-micro"
DISTRO_VERSION    = "1.7"
TUNE_FEATURES     = "m32 i586"
TARGET_FPU        = ""
meta              
meta-yocto        
meta-yocto-bsp    = "dizzy0:64643804aea02e3062a7cde7af236771c56311fd"
meta-intel        = "dizzy0:002bef4c2a59e95503a2bb7729e7749cd5a9f65b"
meta-micro-galileo = "dizzy0:f30310dc84dcd96b9e93bb6e5b531631d57d26d6"

NOTE: Preparing runqueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: Function failed: do_install (log file is located at /home/trz/yocto/galileo-work/build/tmp/work/galileo-poky-linux-uclibc/linux-yocto-micro/3.17+gitAUTOINC+fb21bdc896_522a64f489-r4.1.1/temp/log.do_install.25369)
ERROR: Logfile of failure stored in: /home/trz/yocto/galileo-work/build/tmp/work/galileo-poky-linux-uclibc/linux-yocto-micro/3.17+gitAUTOINC+fb21bdc896_522a64f489-r4.1.1/temp/log.do_install.25369
Log data follows:
| DEBUG: Executing python function package_get_auto_pr
| DEBUG: Python function package_get_auto_pr finished
| DEBUG: Executing shell function do_install
| NOTE: no modules to install
| ln: failed to create symbolic link '/home/trz/yocto/galileo-work/build/tmp/work/galileo-poky-linux-uclibc/linux-yocto-micro/3.17+gitAUTOINC+fb21bdc896_522a64f489-r4.1.1/image/lib/modules/3.17.0-rc7-yocto-micro/build': No such file or directory
| WARNING: /home/trz/yocto/galileo-work/build/tmp/work/galileo-poky-linux-uclibc/linux-yocto-micro/3.17+gitAUTOINC+fb21bdc896_522a64f489-r4.1.1/temp/run.do_install.25369:1 exit 1 from
|   ln -sf /usr/src/kernel "/home/trz/yocto/galileo-work/build/tmp/work/galileo-poky-linux-uclibc/linux-yocto-micro/3.17+gitAUTOINC+fb21bdc896_522a64f489-r4.1.1/image/lib/modules/3.17.0-rc7-yocto-micro/build"
| ERROR: Function failed: do_install (log file is located at /home/trz/yocto/galileo-work/build/tmp/work/galileo-poky-linux-uclibc/linux-yocto-micro/3.17+gitAUTOINC+fb21bdc896_522a64f489-r4.1.1/temp/log.do_install.25369)
ERROR: Task 4 (/home/trz/yocto/galileo-work/meta-intel/meta-micro-galileo/recipes-kernel/linux/linux-yocto-micro_3.17.bb, do_install) failed with exit code '1'
NOTE: Tasks Summary: Attempted 387 tasks of which 386 didn't need to be rerun and 1 failed.
No currently running tasks (357 of 395)

Summary: 1 task failed:
  /home/trz/yocto/galileo-work/meta-intel/meta-micro-galileo/recipes-kernel/linux/linux-yocto-micro_3.17.bb, do_install
Summary: There was 1 ERROR message shown, returning a non-zero exit code.


Reverting this patch gets past it.

Tom

> Signed-off-by: Nitin A Kamble <nitin.a.kamble at intel.com>
> ---
>  meta/classes/kernel.bbclass | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index 78b33ce..5ac4ff4 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -213,6 +213,7 @@ kernel_do_install() {
>  	#
>  	kerneldir=${D}${KERNEL_SRC_PATH}
>  	install -d $kerneldir
> +	ln -sf ${KERNEL_SRC_PATH} "${D}/lib/modules/${KERNEL_VERSION}/build"
>  
>  	#
>  	# Store the kernel version in sysroots for module-base.bbclass
> @@ -346,7 +347,7 @@ PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev kernel-mod
>  FILES_${PN} = ""
>  FILES_kernel-base = "/lib/modules/${KERNEL_VERSION}/modules.order /lib/modules/${KERNEL_VERSION}/modules.builtin"
>  FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
> -FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH}"
> +FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH} /lib/modules/${KERNEL_VERSION}/build"
>  FILES_kernel-vmlinux = "/boot/vmlinux*"
>  FILES_kernel-modules = ""
>  RDEPENDS_kernel = "kernel-base"
> -- 
> 1.8.1.4
> 





More information about the Openembedded-core mailing list