Date
1 - 1 of 1
do_package: Function failed: split_kernel_module_packages
Damien LEFEVRE
Hi, I'm trying to add pixcilnx kernel object to my image based on 4.4.38-l4t-r28.1. The make file looks like this ---------------------------------------------------------------------------------------------------------------- obj-m := pixci.o pixci-objs := pixcipub.o pixcilnx.o SRC := $(shell pwd) # invoked from user or surrogate? all: ar -x pixcilnx_aarch64_4.4.a pixcilnx_4.4.o mv pixcilnx_4.4.o pixcilnx.o_shipped $(MAKE) -C $(KERNEL_SRC) M=$(SRC) $(CROSS_COMPILE)strip --strip-debug --discard-all pixci.ko modules_install: $(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules_install clean: rm -f *.o rm -f *.ko rm -f .pixci.mod.o.cmd rm -f .pixci.o.cmd rm -f .pixci.ko.cmd rm -f .pixcipub.o.cmd rm -rf .tmp_versions ---------------------------------------------------------------------------------------------------------------- The pixci.bb file looks like this ---------------------------------------------------------------------------------------------------------------- SUMMARY = "Kernel module for EPIX grabber" #TODO: set correct license LICENSE = "CLOSED" inherit module SRC_URI = "file://Makefile \ file://pixcilnx_aarch64_4.4.a \ file://pixcipub.c \ file://pixcipub.h \ " S = "${WORKDIR}" # The inherit of module.bbclass will automatically name module packages with # "kernel-module-" prefix as required by the oe-core build environment. KERNEL_MODULE_AUTOLOAD += "pixci" #This should put your module name into /etc/modules-load.d/modname.conf on the image. ---------------------------------------------------------------------------------------------------------------- Do package fails with the following error: ---------------------------------------------------------------------------------------------------------------- ERROR: pixci-1.0-r0 do_package: Error executing a python function in exec_python_func() autogenerated: The stack trace of python calls that resulted in this exception/failure was: File: 'exec_python_func() autogenerated', lineno: 2, function: <module> 0001: *** 0002:split_kernel_module_packages(d) 0003: File: '/home/damien/procbox-develop/sources/poky/meta/classes/kernel-module-split.bbclass', lineno: 141, function: split_kernel_module_packages 0137: 0138: postinst = d.getVar('pkg_postinst_modules') 0139: postrm = d.getVar('pkg_postrm_modules') 0140: *** 0141: modules = do_split_packages(d, root='${nonarch_base_libdir}/modules', file_regex=module_regex, output_pattern=module_pattern, description='%s kernel module', postinst=postinst, postrm=postrm, recursive=True, hook=frob_metadata, extra_depends='kernel-%s' % (d.getVar("KERNEL_VERSION"))) 0142: if modules: 0143: metapkg = d.getVar('KERNEL_MODULES_META_PACKAGE') 0144: d.appendVar('RDEPENDS_' + metapkg, ' '+' '.join(modules)) 0145: File: '/home/damien/procbox-develop/sources/poky/meta/classes/package.bbclass', lineno: 234, function: do_split_packages 0230: d.setVar('pkg_postinst_' + pkg, postinst) 0231: if postrm: 0232: d.setVar('pkg_postrm_' + pkg, postrm) 0233: if callable(hook): *** 0234: hook(f, pkg, file_regex, output_pattern, m.group(1)) 0235: 0236: d.setVar('PACKAGES', ' '.join(packages)) 0237: return list(split_packages) 0238: File: '/home/damien/procbox-develop/sources/poky/meta/classes/kernel-module-split.bbclass', lineno: 65, function: frob_metadata 0061: vals[m.group(1)] = m.group(2) 0062: return vals 0063: 0064: def frob_metadata(file, pkg, pattern, format, basename): *** 0065: vals = extract_modinfo(file) 0066: 0067: dvar = d.getVar('PKGD') 0068: 0069: # If autoloading is requested, output /etc/modules-load.d/<name>.conf and append File: '/home/damien/procbox-develop/sources/poky/meta/classes/kernel-module-split.bbclass', lineno: 52, function: extract_modinfo 0048: tmpfile = tf[1] 0049: cmd = "%sobjcopy -j .modinfo -O binary %s %s" % (d.getVar("HOST_PREFIX") or "", file, tmpfile) 0050: subprocess.call(cmd, shell=True) 0051: f = open(tmpfile) *** 0052: l = f.read().split("\000") 0053: f.close() 0054: os.close(tf[0]) 0055: os.unlink(tmpfile) 0056: vals = {} File: '/usr/lib/python3.5/codecs.py', lineno: 321, function: decode 0317: 0318: def decode(self, input, final=False): 0319: # decode input (taking the buffer into account) 0320: data = self.buffer + input *** 0321: (result, consumed) = self._buffer_decode(data, self.errors, final) 0322: # keep undecoded input until the next call 0323: self.buffer = data[consumed:] 0324: return result 0325: Exception: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa9 in position 83: invalid start byte ERROR: pixci-1.0-r0 do_package: Function failed: split_kernel_module_packages ---------------------------------------------------------------------------------------------------------------- Any ideas what I could be doing wrong? Thanks, -Damien
|
|