building print/cups-base fails when neither MDNSRESPONDER nor AVAHI defined. Fix: In order to avoid problem, use either option when we build it; in this case, Makefile should be changed as using OPTIONS_SINGLE. OTOH, if we should build with both options disabled, I have no idea. Something is strange... --disable-avahi is used ! How-To-Repeat: % make ---> Building '/usr/ports/print/cups-base' ===> Cleaning for cups-base-1.7.2_1 ===> License GPLv2 accepted by the user ===> Found saved configuration for cups-base-1.7.2_1 ===> cups-base-1.7.2_1 depends on file: /usr/local/sbin/pkg - found ===> Fetching all distfiles required by cups-base-1.7.2_1 for building ===> Extracting for cups-base-1.7.2_1 => SHA256 Checksum OK for cups-1.7.2-source.tar.bz2. ===> Patching for cups-base-1.7.2_1 ===> Applying FreeBSD patches for cups-base-1.7.2_1 ===> cups-base-1.7.2_1 depends on package: cups-client>=1.7.2 - found ===> cups-base-1.7.2_1 depends on package: cups-image>=1.7.2 - found ===> cups-base-1.7.2_1 depends on file: /usr/local/lib/libcrypto.so.8 - found ===> cups-base-1.7.2_1 depends on executable: gmake - found ===> cups-base-1.7.2_1 depends on executable: pkgconf - found ===> cups-base-1.7.2_1 depends on executable: gtk-update-icon-cache - found ===> cups-base-1.7.2_1 depends on shared library: libcups.so - found ===> cups-base-1.7.2_1 depends on shared library: libcupsimage.so - found ===> cups-base-1.7.2_1 depends on shared library: libatk-1.0.so - found ===> cups-base-1.7.2_1 depends on shared library: libgdk_pixbuf-2.0.so - found ===> cups-base-1.7.2_1 depends on shared library: libglib-2.0.so - found ===> cups-base-1.7.2_1 depends on shared library: libpcre.so - found ===> cups-base-1.7.2_1 depends on shared library: libpango-1.0.so - found ===> Configuring for cups-base-1.7.2_1 configure: loading site script /usr/ports/Templates/config.site checking for gawk... (cached) /usr/bin/awk checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether cc accepts -g... yes checking for cc option to accept ISO C89... none needed checking how to run the C preprocessor... cpp checking whether we are using the GNU C++ compiler... yes checking whether c++ accepts -g... yes checking for ranlib... ranlib checking for ar... /usr/bin/ar checking for chmod... /bin/chmod checking for gzip... (cached) /usr/bin/gzip checking for ld... /usr/bin/ld checking for ln... /bin/ln checking for mv... /bin/mv checking for rm... /bin/rm checking for rmdir... /bin/rmdir checking for sed... (cached) /usr/bin/sed checking for xdg-open... /usr/local/bin/xdg-open checking for install-sh script... using /usr/ports/print/cups-base/work/cups-1.7.2/install-sh checking for pkg-config... /usr/local/bin/pkg-config checking for library containing abs... none required checking for library containing crypt... -lcrypt checking for library containing fmod... -lm checking for library containing getspent... no checking for grep that handles long lines and -e... (cached) /usr/bin/grep checking for egrep... (cached) /usr/bin/egrep checking for ANSI C header files... (cached) yes checking for sys/types.h... (cached) yes checking for sys/stat.h... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking for memory.h... (cached) yes checking for strings.h... (cached) yes checking for inttypes.h... (cached) yes checking for stdint.h... (cached) yes checking for unistd.h... (cached) yes checking for stdlib.h... (cached) yes checking crypt.h usability... no checking crypt.h presence... no checking for crypt.h... no checking for langinfo.h... (cached) yes checking for malloc.h... (cached) no checking shadow.h usability... no checking shadow.h presence... no checking for shadow.h... no checking for stdint.h... (cached) yes checking for string.h... (cached) yes checking for strings.h... (cached) yes checking bstring.h usability... no checking bstring.h presence... no checking for bstring.h... no checking usersec.h usability... no checking usersec.h presence... no checking for usersec.h... no checking for sys/ioctl.h... (cached) yes checking for sys/param.h... (cached) yes checking sys/ucred.h usability... yes checking sys/ucred.h presence... yes checking for sys/ucred.h... yes checking scsi/sg.h usability... no checking scsi/sg.h presence... no checking for scsi/sg.h... no checking iconv.h usability... yes checking iconv.h presence... yes checking for iconv.h... yes checking for library containing iconv_open... -liconv checking mxml.h usability... no checking mxml.h presence... no checking for mxml.h... no checking for sys/mount.h... (cached) yes checking sys/statfs.h usability... no checking sys/statfs.h presence... no checking for sys/statfs.h... no checking for sys/statvfs.h... (cached) yes checking sys/vfs.h usability... no checking sys/vfs.h presence... no checking for sys/vfs.h... no checking for statfs... (cached) yes checking for statvfs... (cached) yes checking for strdup... (cached) yes checking for strlcat... (cached) yes checking for strlcpy... (cached) yes checking for snprintf... (cached) yes checking for vsnprintf... (cached) yes checking for random... (cached) yes checking for lrand48... yes checking for arc4random... (cached) yes checking for geteuid... (cached) yes checking for setpgid... yes checking for vsyslog... yes checking for sigset... yes checking for sigaction... (cached) yes checking for waitpid... (cached) yes checking for wait3... yes checking for tm_gmtoff member in tm structure... yes checking for st_gen member in stat structure... yes checking for removefile... no test: =: argument expected checking for zlib.h... (cached) yes checking for gzgets in -lz... yes checking for inflateCopy in -lz... yes checking for library containing acl_init... none required checking if GCC supports -fstack-protector... yes checking if GCC supports -fPIE... yes checking if GCC supports -Wno-tautological-compare... no checking for resolv.h... (cached) yes checking for library containing socket... none required checking for library containing gethostbyaddr... none required checking for library containing getifaddrs... none required checking for library containing hstrerror... none required checking for library containing rresvport_af... none required checking for library containing __res_init... none required checking for library containing getaddrinfo... none required checking for library containing getnameinfo... none required checking for struct sockaddr.sa_len... yes checking sys/sockio.h usability... yes checking sys/sockio.h presence... yes checking for sys/sockio.h... yes checking for AppleTalk/at_proto.h... no checking for poll... (cached) yes checking for epoll_create... no checking for kqueue... yes checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for pthread_create using -pthread... yes checking openssl/ssl.h usability... yes checking openssl/ssl.h presence... yes checking for openssl/ssl.h... yes checking for SSL_new in -lssl... yes checking for SSL_set_tlsext_host_name... no Using SSLLIBS="-lssl -lcrypto" Using SSLFLAGS="-DOPENSSL_DISABLE_OLD_DES_SUPPORT" checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for long long int... yes checking for strtoll... (cached) yes checking for launch_msg... no checking launch.h usability... no checking launch.h presence... no checking for launch.h... no checking for java... /usr/local/bin/java checking for perl... /usr/bin/perl checking for python... /usr/local/bin/python configure: creating ./config.status config.status: creating Makedefs config.status: creating conf/cups-files.conf config.status: creating conf/cupsd.conf config.status: creating conf/mime.convs config.status: creating conf/pam.std config.status: creating conf/snmp.conf config.status: creating cups-config config.status: creating data/testprint config.status: creating desktop/cups.desktop config.status: creating doc/help/ref-cups-files-conf.html config.status: creating doc/help/ref-cupsd-conf.html config.status: creating doc/index.html config.status: creating man/client.conf.man config.status: creating man/cups-deviced.man config.status: creating man/cups-driverd.man config.status: creating man/cups-files.conf.man config.status: creating man/cups-lpd.man config.status: creating man/cups-snmp.man config.status: creating man/cupsaddsmb.man config.status: creating man/cupsd.conf.man config.status: creating man/cupsd.man config.status: creating man/lpoptions.man config.status: creating scheduler/cups-lpd.xinetd config.status: creating scheduler/cups.sh config.status: creating scheduler/cups.xml config.status: creating scheduler/org.cups.cups-lpd.plist config.status: creating templates/header.tmpl config.status: creating packaging/cups.list config.status: creating doc/ca/index.html config.status: creating templates/ca/header.tmpl config.status: creating doc/cs/index.html config.status: creating templates/cs/header.tmpl config.status: creating doc/de/index.html config.status: creating templates/de/header.tmpl config.status: creating doc/es/index.html config.status: creating templates/es/header.tmpl config.status: creating doc/fr/index.html config.status: creating templates/fr/header.tmpl config.status: creating doc/it/index.html config.status: creating templates/it/header.tmpl config.status: creating doc/ja/index.html config.status: creating templates/ja/header.tmpl config.status: creating doc/ru/index.html config.status: creating templates/ru/header.tmpl config.status: creating config.h ===> Building for cups-base-1.7.2_1 /bin/cp -p /usr/local/lib/libcups.a /usr/ports/print/cups-base/work/cups-1.7.2/cups/ /bin/cp -p /usr/local/lib/libcups.so /usr/ports/print/cups-base/work/cups-1.7.2/cups/ /bin/cp -p /usr/local/lib/libcups.so.2 /usr/ports/print/cups-base/work/cups-1.7.2/cups/ /bin/cp -p /usr/local/lib/libcupsimage.so /usr/ports/print/cups-base/work/cups-1.7.2/filter/ /bin/cp -p /usr/local/lib/libcupsimage.so.2 /usr/ports/print/cups-base/work/cups-1.7.2/filter/ chmod +x cups-config echo Using ARCHFLAGS="" Using ARCHFLAGS= echo Using ALL_CFLAGS="-I.. -D_CUPS_SOURCE -I/usr/local/include -O -pipe -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE -D_THREAD_SAFE -D_REENTRANT " Using ALL_CFLAGS=-I.. -D_CUPS_SOURCE -I/usr/local/include -O -pipe -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE -D_THREAD_SAFE -D_REENTRANT echo Using ALL_CXXFLAGS="-I.. -D_CUPS_SOURCE -I/usr/local/include -O -pipe -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE -D_THREAD_SAFE -D_REENTRANT " Using ALL_CXXFLAGS=-I.. -D_CUPS_SOURCE -I/usr/local/include -O -pipe -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE -D_THREAD_SAFE -D_REENTRANT echo Using CC="cc" Using CC=cc echo Using CXX="cc" Using CXX=cc echo Using DSOFLAGS="-L../cups -Wl,-R/usr/local/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-soname,`basename all` -shared -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector" Using DSOFLAGS=-L../cups -Wl,-R/usr/local/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-soname,all -shared -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector echo Using LDFLAGS="-L../cgi-bin -L../cups -L../filter -L../ppdc -L../scheduler -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-R/usr/local/lib -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector" Using LDFLAGS=-L../cgi-bin -L../cups -L../filter -L../ppdc -L../scheduler -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-R/usr/local/lib -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector echo Using LIBS="-lcups -lssl -lcrypto -lz -pthread -lm -lcrypt -lssp_nonshared -liconv -lz" Using LIBS=-lcups -lssl -lcrypto -lz -pthread -lm -lcrypt -lssp_nonshared -liconv -lz for dir in test backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates; do\ echo Making all in $dir... ;\ (cd $dir ; gmake - --jobserver-fds=3,4 -j all ) || exit 1;\ done Making all in test... gmake[1]: Entering directory ` /usr/ports/print/cups-base/work/cups-1.7.2/test' echo Compiling ippserver.c... echo Compiling ipptool.c... Compiling ippserver.c... cc -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector -I.. -D_CUPS_SOURCE -I/usr/local/include -O -pipe -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE -D_THREAD_SAFE -D_REENTRANT -c -o ippserver.o ippserver.c Compiling ipptool.c... cc -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector -I.. -D_CUPS_SOURCE -I/usr/local/include -O -pipe -DOPENSSL_DISABLE_OLD_DES_SUPPORT -D_LARGEFILE_SOURCE -D_THREAD_SAFE -D_REENTRANT -c -o ipptool.o ipptool.c ippserver.c: In function 'ipp_cancel_job': ippserver.c:2303: warning: null format string ippserver.c: In function 'ipp_create_job': ippserver.c:2356: warning: null format string ippserver.c: In function 'ipp_get_job_attributes': ippserver.c:2387: warning: null format string ippserver.c: In function 'ipp_get_jobs': ippserver.c:2542: warning: null format string ippserver.c: In function 'ipp_get_printer_attributes': ippserver.c:2594: warning: null format string ippserver.c: In function 'ipp_print_job': ippserver.c:2823: warning: null format string ippserver.c: In function 'ipp_print_uri': ippserver.c:3134: warning: null format string ippserver.c: In function 'ipp_send_document': ippserver.c:3344: warning: null format string ippserver.c: In function 'ipp_send_uri': ippserver.c:3713: warning: null format string ippserver.c: In function 'ipp_validate_job': ippserver.c:3734: warning: null format string echo Linking ippserver... Linking ippserver... cc -L../cgi-bin -L../cups -L../filter -L../ppdc -L../scheduler -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-R/usr/local/lib -Wall -Wno-format-y2k -Wunused -fPIC -Os -g -fstack-protector -o ippserver ippserver.o ../cups/libcups.a \ -lssl -lcrypto -pthread -lm -lcrypt -lssp_nonshared -liconv -lz -lz ../cups/libcups.a(http-support.o)(.text+0x62d): In function `http_client_cb': /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1871: undefined reference to `avahi_simple_poll_quit' ../cups/libcups.a(http-support.o)(.text+0x120b): In function `http_resolve_cb': /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2234: undefined reference to `avahi_service_resolver_free' ../cups/libcups.a(http-support.o)(.text+0x1214): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2235: undefined reference to `avahi_simple_poll_quit' ../cups/libcups.a(http-support.o)(.text+0x1330): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2266: undefined reference to `avahi_service_resolver_free' ../cups/libcups.a(http-support.o)(.text+0x1339): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2267: undefined reference to `avahi_simple_poll_quit' ../cups/libcups.a(http-support.o)(.text+0x139a): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2275: undefined reference to `avahi_string_list_find' ../cups/libcups.a(http-support.o)(.text+0x13c3): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2288: undefined reference to `avahi_string_list_find' ../cups/libcups.a(http-support.o)(.text+0x13df): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2290: undefined reference to `avahi_string_list_get_pair' ../cups/libcups.a(http-support.o)(.text+0x1594): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:2379: undefined reference to `avahi_simple_poll_quit' ../cups/libcups.a(http-support.o)(.text+0x21b5): In function `_httpResolveURI': /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1739: undefined reference to `avahi_simple_poll_new' ../cups/libcups.a(http-support.o)(.text+0x21dd): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1741: undefined reference to `avahi_simple_poll_set_func' ../cups/libcups.a(http-support.o)(.text+0x21e7): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1743: undefined reference to `avahi_simple_poll_get' ../cups/libcups.a(http-support.o)(.text+0x2205): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1743: undefined reference to `avahi_client_new' ../cups/libcups.a(http-support.o)(.text+0x226a): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1747: undefined reference to `avahi_service_resolver_new' ../cups/libcups.a(http-support.o)(.text+0x2293): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1758: undefined reference to `avahi_simple_poll_iterate' ../cups/libcups.a(http-support.o)(.text+0x22f8): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1768: undefined reference to `avahi_service_resolver_new' ../cups/libcups.a(http-support.o)(.text+0x2312): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1776: undefined reference to `avahi_simple_poll_iterate' ../cups/libcups.a(http-support.o)(.text+0x2381): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1800: undefined reference to `avahi_client_free' ../cups/libcups.a(http-support.o)(.text+0x238b): /usr/ports/print/cups-client/work/cups-1.7.2/cups/http-support.c:1803: undefined reference to `avahi_simple_poll_free' gmake[1]: *** [ippserver] Error 1 gmake[1]: *** Waiting for unfinished jobs.... gmake[1]: Leaving directory ` /usr/ports/print/cups-base/work/cups-1.7.2/test' gmake: *** [all] Error 1 ===> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. *** Error code 1 Stop in /usr/ports/print/cups-base. *** Error code 1 Stop in /usr/ports/print/cups-base.
I'm having the same problem. My system is: FreeBSD 11.0-CURRENT #1 r264673: Sat Apr 19 09:43:10 EDT 2014 amd64 . and the ports tree was updated at 00:01EDT today. Reinstalling avahi does not help. Robert Huff
This would be fixed in cups 1.7.3, as http://www.cups.org/ says.
cups-base 1.7.3 is in ports now.
(In reply to John Marino from comment #3) > cups-base 1.7.3 is in ports now. No problem with cups-base 1.7.3, for this port requires avahi or mDNSResponder. BTW, original cups-base 1.7.3 requires none of above...