CUPS web interface on YOCTO

2019-08-23 18:44发布

问题:

I have a yocto image into which I have included the CUPS package (using IMAGE_INSTALL_append).

While running the OS, I couldn't find the cups file in /etc/init.d.

I started cups using cupsd. When I tried accessing the web interface using localhost:631, I got a not found error. The console shows that it is not able to load resources on any of those URLS:

http://localhost:631/cups.css

http://localhost:631/

http://localhost:631/favicon.ico

The html and related files seem to be listed in the cups.inc file. Are there additional configuration changes that need be made before doing the YOCTO build or on the CUPS setup?

Since I am very new to yocto and developing in a linux environment, I am not sure if I am missing something obvious.

回答1:

You made good research pointing to the recipe and were actually close to find the solution.

In the recipe, you can read:

# Remove sysinit script and symlinks if sysvinit is not in DISTRO_FEATURES
if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','false','true',d)}; then
    rm -rf ${D}${sysconfdir}/init.d/
    rm -rf ${D}${sysconfdir}/rc*
fi

Is sysvinit in your DISTRO_FEATURES?

If you don't know you can do

bitbake cups -e | grep "^DISTRO_FEATURES="


回答2:

This question is quite old and already has an accepted answer. Nevertheless, it may be of use for someone else facing the same problem of missing static html content of the CUPS Web interface.

The CUPS recipe packages the static web content into cups-doc. Thus, instead of

IMAGE_INSTALL_append = " cups"

it should be

IMAGE_INSTALL_append = " cups cups-doc"

in your conf/local.conf. Then, also the files under /usr/share/doc/cups were added to the rootfs.

Check

# Replace <target>, <image> and <version> to match your configuration
# e.g.: raspberrypi3-poky-linux-gnueabi/core-image-full-cmdline/1.0-r0

$YOUR_POKY_DIRECTORY/build/tmp/work/<target>/<image>/<version>/rootfs/usr/share/doc/cups

that was entirely missing before adding the cups-doc package.



标签: yocto cups