我已经尝试使用下面的命令在yocto中安装CANopen。但是CANOpen没有安装。
bitbake canopensocket_git在我添加的local.conf文件中
CORE_IMAGE_EXTRA_INSTALL += " canopensocket_git "如何安装canopen包?
任何输入都会被考虑在内。
发布于 2021-08-06 09:56:33
首先,这是一个语法错误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_compile,do_install,并添加了FILES的包装。
我将SRCREV设置为最新的v4标记commit,而不是AUTOREV。
我不知道这个配方是做什么的,但是我编译了它,在zeus版本上构建对我来说是可以的。
构建生成了两个二进制文件:cocomm和canopen.cgi。
不,如果你想把它安装到你的镜像中,把这个添加到你的cutom镜像配方中:
IMAGE_INSTALL_append = " canopensocket"https://stackoverflow.com/questions/68676864
复制相似问题