• petalinux add pre-build application to rootfs compile faliure solution


    Vivado Petalinux版本:2018.3

    1. 按照UG1144 -> Chapter 7 Customizing the Rootfs -> Including Prebuilt Applications建立mygpio,结果编译无法通过,解决方法

    1. Create an application with the following command.
    $ petalinux-create -t apps --template install --name myapp --enable

    2. Change to the newly created application directory.
    $ cd <plnx-proj-root>/project-spec/meta-user/recipes-apps/myapp/files/

    3. Remove existing myapp app and copy the prebuilt myapp into myapp/files directory.
    $ rm myapp

    $ cp <path-to-prebuilt-app> ./

    编译rootfs

    cmd:petalinux-build -c rootfs

    如下报错:

    ERROR: mygpio-1.0-r0 do_package: QA Issue: File '/usr/bin/mygpio' from mygpio was already stripped, this will prevent future debugging! [already-stripped]
    ERROR: mygpio-1.0-r0 do_package: Fatal QA errors found, failing task.
    ERROR: mygpio-1.0-r0 do_package: Function failed: do_package
    ERROR: Logfile of failure stored in: /home/Kevin/petaprojects/xilinx-zc706-2018.3/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/mygpio/1.0-r0/temp/log.do_package.50070
    ERROR: Task (/home/Kevin/petaprojects/xilinx-zc706-2018.3/project-spec/meta-user/recipes-apps/mygpio/mygpio.bb:do_package) failed with exit code '1'

    解决方法:

    mygpio.bb  添加如下string

    INSANE_SKIP_mygpio = "ldflags"               //备注:mygpio为客户自己建立的app名称,在此example中为mygpio
    INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
    INHIBIT_PACKAGE_STRIP = "1"

    完整的mygpio.bb 如下:

    # This file is the mygpio recipe.
    #

    SUMMARY = "Simple mygpio application"
    SECTION = "PETALINUX/apps"
    LICENSE = "MIT"
    LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

    SRC_URI = "file://mygpio
    "

    S = "${WORKDIR}"


    INSANE_SKIP_mygpio = "ldflags"
    INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
    INHIBIT_PACKAGE_STRIP = "1"

    do_install() {
    install -d ${D}/${bindir}
    install -m 0755 ${S}/mygpio ${D}/${bindir}
    }

    重新编译rootfs,通过了

    cmd:petalinux-build -c rootfs

    End

  • 相关阅读:
    c++ --> 虚函数
    Algorithm --> 全排列
    Algorithm --> 矩阵链乘法
    STL --> set用法
    STL --> list用法
    Algorithm --> 最长公共子序列(LCS)
    Zookeeper使用实例——服务节点管理
    Zookeeper使用实例——分布式共享锁
    Zookeeper初探
    Java设计模式应用——备忘录模式
  • 原文地址:https://www.cnblogs.com/Ph-one/p/13139388.html
Copyright © 2020-2023  润新知