0

我正在尝试在 H3ULCB 上运行对象检测算法(使用 OpenCV 2.4.13.7)。它给出了 libGTK,如下所示

root@h3ulcb:/media/2.4.13_algo_target_# ./main_

OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or [ 1976.641753] audit: type=1706
Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvWaitKey, fil7
terminate called after throwing an instance of 'cv::Exception'
  what():  /media/2.4.13.7_pckage/modules/highgui/src/window.cpp:567: error: (-2) The function is not implemented. Rebuild the library with Wiy
Aborted (core dumped)}

为了解决这个错误,我尝试在 H3ULCB 上安装 libGTK 包(libgtk2.0-dev_2.24.31-2_arm64.deb),但它没有安装到目标。

* pkg_extract_data_file_names_to_stream: Failed to extract data.tar.gz from package '/media/libgtk2.0-dev_2.24.31-2_arm64.deb'.
* pkg_get_installed_files: Error extracting file list from /media/libgtk2.0-dev_2.24.31-2_arm64.deb.
* opkg_install: Cannot install package libgtk2.0-dev.

H3ULCB 的 BSP 和 SDK 是使用 yocto 构建的,详细信息如下:

Yocto 版本:2.23
Poky:2.1.3

  1. libgtk2.0通过从 apt-get manager安装库,在本机 Linux (Ubuntu16.04) 上解决了相同的错误。但是包管理器aptdpkg没有安装在目标上。在构建图像时,我尝试在 yocto 层中添加这些管理器。

  2. 目前在 H3ULCB 上可用的包管理器是 OPKG。由于 OPKG 适用于 .IPK 包,但不适用于 .IPK 包libgtk2.0,因此我已将 .deb 包转换为 .IPK 包。在 H3ulcb 上执行 .IPK 包时:

    root@h3ulcb:/media# opkg install libgtk2.0-dev_2.24.31-2_arm64.ipk 
    Collected errors:
     * open_outer: Failed to open package 'libgtk2.0-dev_2.24.31-2_arm64.ipk': Unrecognized archive format
     * pkg_extract_control_file_to_stream: Failed to extract control.tar.gz from package 'libgtk2.0-dev_2.24.31-2_arm64.ipk'.
     * pkg_init_from_file: Failed to extract control file from libgtk2.0-dev_2.24.31-2_arm64.ipk.
    
  3. 包里libgtk2.0-dev_2.24.31-2_arm64.deb有3个文件

    • control.tar.gz
    • data.tar.xz
    • debian-binary

    在 H3ULCB 上执行 .deb 文件时,显示错误data.tar.gz而不是data.tar.xz如下所示:

    pkg_extract_data_file_names_to_stream: Failed to extract data.tar.gz from package '/media/libgtk2.0-dev_2.24.31-2_arm64.deb'.
    

我已将 data.tar.xz 转换为 data.tar.gz,但是如何将这些文件 3 个文件打包回 .deb 包?

4

0 回答 0