Michal
March 13, 2017, 12:18am
1
Hi.
Im trying to bitbake image for Apalis TK1 with opencv but I got that error:
Collected errors:
check_data_file_clashes: Package linux-driver-package-dev wants to install file /home/odroid/Openembedded_TK1/oe-core/build/tmp-glibc/work/apalis_tk1-angstrom-linux-gnueabi/angstrom-lxde-image/V2.7-r0/Apalis_TK1_LinuxImageV2.7/rootfs/usr/lib/libGL.so
But that file is already provided by package * libgl-mesa-dev
opkg_solver_install: Cannot install package opencv.
I followed instructions on:
and
and use
bitbake -k angstrom-lxde-image
but I got that error at the end of process.
If I remove
IMAGE_INSTALL_append = " opencv"
from local.conf bitbake is producing image correct.
PS
I also have this warning:
WARNING: No recipes available for:
/home/odroid/OpenEmbedded_Apalis/oe-core/build/…/layers/meta-jetson-tk1/recipes-graphics/mesa/mesa_11.1.1.bbappend.
Is recipe for opencv 3.1 is broken??
Thanks
For opencv on the Apalis TK1, recommended recipe would be opencv4tegra . OpenCV for Tegra is a version of OpenCV that NVIDIA optimized specifically for Tegra platform family.
IMAGE_INSTALL_append = " opencv4tegra"
would be required in local.conf.
Also have a look at the OpenCV for Tegra documentation .
Michal
March 14, 2017, 8:15pm
3
Thanks for that.
I added:
IMAGE_INSTALL_append = " cudatoolkit6.5"
IMAGE_INSTALL_append = " opencv4tegra"
and apply patches from morty-next branch.
Now it is compiling wit no errors but at the end of bitbake I got this error:
ERROR: angstrom-lxde-image-V2.7-r0 do_rootfs: 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:do_rootfs(d)
0003:
File: '/home/ApalisDev/Openembedded_TK1/oe-core/build/../layers/openembedded-core/meta/classes/image.bbclass', lineno: 249, function: do_rootfs
0245:
0246: progress_reporter.next_stage()
0247:
0248: # generate rootfs
*** 0249: create_rootfs(d, progress_reporter=progress_reporter)
0250:
0251: progress_reporter.finish()
0252:}
0253:do_rootfs[dirs] = "${TOPDIR}"
File: '/home/ApalisDev/Openembedded_TK1/oe-core/build/../layers/openembedded-core/meta/lib/oe/rootfs.py', lineno: 1006, function: create_rootfs
1002: img_type = d.getVar('IMAGE_PKGTYPE', True)
1003: if img_type == "rpm":
1004: RpmRootfs(d, manifest_dir, progress_reporter).create()
1005: elif img_type == "ipk":
*** 1006: OpkgRootfs(d, manifest_dir, progress_reporter).create()
1007: elif img_type == "deb":
1008: DpkgRootfs(d, manifest_dir, progress_reporter).create()
1009:
1010: os.environ.clear()
File: '/home/ApalisDev/Openembedded_TK1/oe-core/build/../layers/openembedded-core/meta/lib/oe/rootfs.py', lineno: 199, function: create
0195: if self.progress_reporter:
0196: self.progress_reporter.next_stage()
0197:
0198: # call the package manager dependent create method
*** 0199: self._create()
0200:
0201: sysconfdir = self.image_rootfs + self.d.getVar('sysconfdir', True)
0202: bb.utils.mkdirhier(sysconfdir)
0203: with open(sysconfdir + "/version", "w+") as ver:
File: '/home/ApalisDev/Openembedded_TK1/oe-core/build/../layers/openembedded-core/meta/lib/oe/rootfs.py', lineno: 944, function: _create
0940: if pkg_type == Manifest.PKG_TYPE_MULTILIB:
0941: self._multilib_test_install(pkgs_to_install[pkg_type])
0942:
0943: self.pm.install(pkgs_to_install[pkg_type],
*** 0944: [False, True][pkg_type == Manifest.PKG_TYPE_ATTEMPT_ONLY])
0945:
0946: if self.progress_reporter:
0947: self.progress_reporter.next_stage()
0948:
File: '/home/ApalisDev/Openembedded_TK1/oe-core/build/../layers/openembedded-core/meta/lib/oe/package_manager.py', lineno: 1770, function: install
1766:
1767: try:
1768: bb.note("Installing the following packages: %s" % ' '.join(pkgs))
1769: bb.note(cmd)
*** 1770: output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT).decode("utf-8")
1771: bb.note(output)
1772: except subprocess.CalledProcessError as e:
1773: (bb.fatal, bb.note)[attempt_only]("Unable to install packages. "
1774: "Command '%s' returned %d:\n%s" %
Exception: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa2 in position 129998: invalid start byte
ERROR: angstrom-lxde-image-V2.7-r0 do_rootfs: Function failed: do_rootfs
ERROR: Logfile of failure stored in: /home/ApalisDev/Openembedded_TK1/oe-core/build/tmp-glibc/work/apalis_tk1-angstrom-linux-gnueabi/angstrom-lxde-image/V2.7-r0/temp/log.do_rootfs.4795
ERROR: Task (/home/ApalisDev/Openembedded_TK1/oe-core/build/../layers/meta-toradex-demos/recipes-images/images/angstrom-lxde-image.bb:do_rootfs) failed with exit code '1'
NOTE: Tasks Summary: Attempted 7341 tasks of which 7105 didn't need to be rerun and 1 failed.
NOTE: Writing buildhistory
Summary: 1 task failed:
/home/ApalisDev/Openembedded_TK1/oe-core/build/../layers/meta-toradex-demos/recipes-images/images/angstrom-lxde-image.bb:do_rootfs
Summary: There was 1 WARNING message shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
Michal
March 14, 2017, 11:24pm
4
I solved this by changing in package_manager.py
output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT).decode(“utf-8”)
to
output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT).decode(“gb2312”,errors=“ignore”)
Bitbake process is now finished and generated image seems to work but im not sure if that is the proper way.
Thanks