Apalis TK1 opencv bitbake failed

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.

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.

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