【问题标题】:Install CANopen package in yocto在 yocto 中安装 CANopen 包
【发布时间】:2021-10-11 01:40:14
【问题描述】:

我尝试使用以下命令在 yocto 中安装 CANopen。但是 CANOpen 没有安装。

bitbake canopensocket_git

在我添加的 local.conf 文件中

CORE_IMAGE_EXTRA_INSTALL += " canopensocket_git "

如何安装 canopen 包?

任何输入也会被考虑。

【问题讨论】:

    标签: yocto can-bus canopen yocto-recipe imx8


    【解决方案1】:

    首先,这是一个语法错误canopensocket_git

    配方名称${PN}canopensocket_ 之后的所有内容都是版本号${PV}

    因此,您只需指定配方名称。或者,如果您有不同的版本,您可以通过以下方式指定一个:

    PREFERRED_VERSION_canopensocket = "version_here"
    

    话虽如此,我在here 中找到了canopensocket 的配方。

    但是如果失败并且它没有被最新的 github 提交更新。

    我对它做了一些修改,这是我的食谱:

    SUMMARY = "Linux CANOpen tools"
    DESCRIPTION = "Linux CANOpen Protocol Stack Tools"
    LICENSE = "GPLv2"
    LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
    
    SRC_URI = "git://github.com/CANopenNode/CANopenSocket.git"
    SRCREV = "ec9735165502e08b5d2e84d641833709b6faeb96"
    
    S = "${WORKDIR}/git"
    
    do_compile_prepend() {
        cd ${S}
        git submodule init
        git submodule update
    }
    
    do_compile() {
        cd ${S}/cocomm
        make
        cd ${S}/canopencgi
        make
    }
    
    do_install(){
        install -d ${D}${bindir}
        install -m 0755 ${S}/cocomm/cocomm ${D}${bindir}
        install -m 0755 ${S}/canopencgi/canopen.cgi ${D}${bindir}
    }
    
    FILES_${PN} += "${bindir}/*"
    

    我修改了do_compiledo_install,增加了FILES的封装。

    我将 SRCREV 设置为最新的 v4 标签提交,而不是 AUTOREV

    我不知道这个配方有什么作用,但我编译了它,并且在 zeus 构建中构建对我来说没问题。

    构建生成了两个二进制文件:cocommcanopen.cgi

    不,如果您想将其安装到您的图像中,请将其添加到您的自定义图像配方中:

    IMAGE_INSTALL_append = " canopensocket"
    

    【讨论】:

    • 我无法安装 canopensocket_git。这些文件在 meta-oe/recipes-extended/canopennode/ 下不可用。我已经下载了文件并复制到了 meta-oe/recipes-extended/canopennode/ 下。有哪些进一步的改变?
    • 你运行的是bitbake canopensocket_git还是bitbake canopensocket
    • 我跑过bitbake canopensocket
    • 你能在运行命令时发布错误吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-23
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    • 1970-01-01
    • 2016-07-01
    • 2020-02-08
    相关资源
    最近更新 更多