Yocto错误:函数失败:SYSTEMD_SERVICE_package值myservice.service不存在

时间:2019-06-05 12:38:18

标签: yocto

在一个烘烤食谱中,我正在尝试安装服务。在我看来,Yocto似乎没有捡起它。以下是我的食谱:

cmap.set_under(black)

尝试编译图像时,我得到:

import numpy as np
import matplotlib.pyplot as plt

t = np.linspace(-7,7,301)
x,y = np.meshgrid(t,t)
z1 = np.sin(x)*np.cos(6*y) + np.cos(12*x*y)/6
z2 = np.exp(-((x-2)**2+(y-2)**2)*3)
z = (z1*6/7+1)*100+1800-z2*1949

cmap=plt.get_cmap("viridis")
cmap.set_under("black")

fig, (ax1, ax2) = plt.subplots(ncols=2, figsize=(9,3.0))

im1 = ax1.imshow(z, cmap=cmap)
fig.colorbar(im1, ax=ax1)

im2 = ax2.imshow(z, vmin=1800, vmax=2000, cmap=cmap)
fig.colorbar(im2, ax=ax2)


ax1.set_title("Original")
ax2.set_title("Linear between 1800 and 2000")
plt.show()

当我进行文件搜索时,服务文件出现在这里:


SRC_URI = "file://dispatcherd.service \
           file://llc-check.sh \
           file://dispatcherd \
    "

<snip>

do_install(){
    # Install startup script
        install -d ${D}${systemd_system_unitdir}
        install -m 0644 ${WORKDIR}/dispatcherd.service ${D}${systemd_system_unitdir}
}

INITSCRIPT_NAME = "dispatcherd"
#INITSCRIPT_PARAMS = "defaults 90 10"

SYSTEMD_SERVICE_${PN} = "dispatcherd.service"
SYSTEMD_AUTO_ENABLE_${PN} = "disable"

inherit update-rc.d systemd

INSANE_SKIP_${PN} = "ldflags"

FILES_${PN} = "${libdir}/*  \
               ${bindir}/*  \
               ${sysconfdir}/init.d/dispatcherd \
              "

我已经尝试谷歌搜索解决方案,但到目前为止还没有运气。关于什么地方可能出问题或为什么Yocto似乎找不到文件的任何提示?

1 个答案:

答案 0 :(得分:1)

看来我在环境中使用的是yocto的较旧版本,必须使用

install -d ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/dispatcherd.service ${D}${systemd_unitdir}/system

Enable systemd services using yocto中的建议

唯一的原因是我发现将回购中的systemd.bbclass文件与yocto回购中的最新文件进行了比较。我的搜索路径缺少systemd_system_unitdir条目。