[prev in list] [next in list] [prev in thread] [next in thread]
List: cups
Subject: Re: [cups.general] Bonjour publishing from Linux
From: Cedric King <cedbobking () yahoo ! com>
Date: 2011-12-30 6:26:00
Message-ID: 40623-cups.general () news ! easysw ! com
[Download RAW message or body]
> We have netatalk/avahi file servers based on CentOS 5.7 and 6.1 which work great. \
> The next goal is to have them auto-magically share out printers to Snow Leopard and \
> Lion clients. I've done a great deal of Googling but cannot get it to work. \
> Basically we'd like it to work as if they were shared off a Mac: from the client \
> machine System Preferences > Print & Fax > Add Printer > Default where all the \
> Bonjour printers seem to show up.
> Since CentOS still runs cups-1.3.x, I have used rpmbuild to create cups-1.4.8 and \
> cups-1.5.0 x86_64 rpms from the sources from cups.org/software.php that seem to \
> install and work just fine for printing from the local system. However when I go to \
> administer them I cannot get dnssd to show as an share printers protocol in \
> http://localhost:631/admin despite what I put in cupsd.conf. I also do not see \
> dnssd in /usr/lib/cups/backend/
> Does CUPS work with Avahi? Is there another Bonjour server that we could install in \
> CentOS that would work?
> If someone could point me in a useful direction, I would greatly appreciate it.
>
> Thanks,
>
> Cedric
>
Okay, I used avahi-discover to copy the info from a shared printer on a Snow Leopard \
system to create my avahi service file. Another OS X system picked it up from Avahi \
just fine, but failed to print until I changed the path in the CUPS from \
ipp://path/to/printer:631 to http://path/to/printer:631. Then it works great, but not \
quite automagic.
Again I go back to CUPS Admin on the Mac printer share and see that there is a \
checked option for "DNS-SD" that I can't get on the Linux system.
I start digging through the sources and find reference to dns_sd libraries and find a \
package in YUM called avahi-compat-libdns_sd-devel and install it. But it still \
compiles without the DNS-SD option.
So I think that my fundamental problem is that CUPS is building without dns-sd on my \
CentOS 5.7 x86_64 system for some reason. Can anyone provide advice on how to get \
that feature included in the rpm from rpmbuild?
Thanks,
Cedric
Pertinent details below.
[root@cupsdev ~]# grep -A 31 able_dnssd \
/usr/src/redhat/BUILD/cups-1.5.0/config-scripts/cups-dnssd.m4 if test x$enable_dnssd \
!= xno; then AC_CHECK_HEADER(dns_sd.h, [
case "$uname" in
Darwin*)
# Darwin and MacOS X...
AC_DEFINE(HAVE_DNSSD)
AC_DEFINE(HAVE_COREFOUNDATION)
AC_DEFINE(HAVE_SYSTEMCONFIGURATION)
DNSSDLIBS="-framework CoreFoundation -framework \
SystemConfiguration" DNSSD_BACKEND="dnssd"
;;
*)
# All others...
AC_MSG_CHECKING(for current version of dns_sd \
library) SAVELIBS="$LIBS"
LIBS="$LIBS -ldns_sd"
AC_TRY_COMPILE([#include <dns_sd.h>],
[int constant = \
kDNSServiceFlagsShareConnection; unsigned char txtRecord[100];
uint8_t valueLen;
TXTRecordGetValuePtr(sizeof(txtRecord),
txtRecord, "value", &valueLen);],
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_DNSSD)
DNSSDLIBS="-ldns_sd"
DNSSD_BACKEND="dnssd",
AC_MSG_RESULT(no))
LIBS="$SAVELIBS"
;;
esac
])
fi
[root@cupsdev ~]# rpm -q --fileprovide avahi-compat-libdns_sd-devel.x86_64
/usr/include/avahi-compat-libdns_sd
/usr/include/avahi-compat-libdns_sd/dns_sd.h
/usr/include/dns_sd.h
/usr/lib64/libdns_sd.so
/usr/lib64/pkgconfig/avahi-compat-libdns_sd.pc
/usr/lib64/pkgconfig/libdns_sd.pc
[root@cupsdev ~]#
_______________________________________________
cups mailing list
cups@easysw.com
http://lists.easysw.com/mailman/listinfo/cups
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic