[cups.general] Problem with cross-compiling CUPS for ARM processor
Michael R Sweet
msweet at apple.com
Thu Jul 12 20:44:40 PDT 2012
The CUPS build system currently does not support cross compilation, sorry...
Sent from my iPhone
On Jul 12, 2012, at 1:11 PM, Tom Morrison <tom.morrison at smith-nephew.com> wrote:
> I am trying to configure and cross compile for the ARM with CUPS 1.5.3.
>
> I have defined the CC/CXX/RANLIB/AR - and I try to compile, but it tries to
> compile and execute on the host two programs:
>
> Genstrings
> ManToHTML
>
> which obviously are cross-compiled for the ARM?
>
> Here is whats in my Makedefs
>
>
>
> # "$Id: Makedefs.in 10317 2012-03-01 00:05:55Z mike $"
> #
> # Common makefile definitions for CUPS.
> #
> # Copyright 2007-2011 by Apple Inc.
> # Copyright 1997-2007 by Easy Software Products, all rights reserved.
> #
> # These coded instructions, statements, and computer programs are the
> # property of Apple Inc. and are protected by Federal copyright
> # law. Distribution and use rights are outlined in the file "LICENSE.txt"
> # which should have been included with this file. If this file is
> # file is missing or damaged, see the license at "http://www.cups.org/".
> #
>
> #
> # Programs...
> #
>
> AR = /opt/armCodeSourcery/bin/arm-none-linux-gnueabi-ar
> AWK = gawk
> CC = /opt/armCodeSourcery/bin/arm-none-linux-gnueabi-gcc
> CHMOD = /bin/chmod
> CXX = /opt/armCodeSourcery/bin/arm-none-linux-gnueabi-g++
> DSO = :
> DSOXX = :
> HTMLDOC =
> INSTALL = /home/morrisont/evm_new_dvsdk/cups-1.5.3/install-sh
> LD = /opt/armCodeSourcery/bin/arm-none-linux-gnueabi-ld
> LIBTOOL =
> LN = /bin/ln -sf
> MV = /bin/mv
> PHPCONFIG =
> RANLIB = /opt/armCodeSourcery/bin/arm-none-linux-gnueabi-ranlib
> RM = /bin/rm -f
> RMDIR = /bin/rmdir
> SED = /bin/sed
> SHELL = /bin/sh
>
> #
> # Installation programs...
> #
>
> INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 555 -s
> INSTALL_CONFIG = $(INSTALL) -c -m 640
> INSTALL_COMPDATA = $(INSTALL) -c -m 444
> INSTALL_DATA = $(INSTALL) -c -m 444
> INSTALL_DIR = $(INSTALL) -d
> INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 555 -s
> INSTALL_MAN = $(INSTALL) -c -m 444
> INSTALL_SCRIPT = $(INSTALL) -c -m 555
>
> #
> # Default user, group, and system groups for the scheduler...
> #
>
> CUPS_USER = lp
> CUPS_GROUP = lp
> CUPS_SYSTEM_GROUPS = sys root
> CUPS_PRIMARY_SYSTEM_GROUP = sys
>
> #
> # Default permissions...
> #
>
> CUPS_CONFIG_FILE_PERM = 640
> CUPS_LOG_FILE_PERM = 644
>
> #
> # Languages to install...
> #
>
> LANGUAGES = da de es eu fi fr hu id it ja ko nl no pl pt pt_BR ru sv zh zh_TW
> INSTALL_LANGUAGES = install-languages
> UNINSTALL_LANGUAGES = uninstall-languages
>
> #
> # Libraries...
> #
>
> LIBCUPS = libcups.a
> LIBCUPSCGI = libcupscgi.a
> LIBCUPSDRIVER = libcupsdriver.a
> LIBCUPSIMAGE = libcupsimage.a
> LIBCUPSMIME = libcupsmime.a
> LIBCUPSPPDC = libcupsppdc.a
> LIBCUPSSTATIC = libcups.a
> LIBJPEG =
> LIBLDAP =
> LIBMALLOC =
> LIBPAPER =
> LIBPNG =
> LIBSLP =
> LIBGSSAPI =
> LIBTIFF =
> LIBUSB =
> LIBWRAP =
> LIBZ =
>
> #
> # Install static libraries?
> #
>
> INSTALLSTATIC = installstatic
>
> #
> # IPP backend aliases...
> #
>
> IPPALIASES = http
>
> #
> # Install XPC backends?
> #
>
> INSTALLXPC =
>
> #
> # Program options...
> #
> # ARCHFLAGS Defines the default architecture build options.
> # ARCH32FLAGS Defines the 32-bit architecture build options, used
> # when compiling separate 32/64-bit libraries.
> # ARCH64FLAGS Defines the 64-bit architecture build options, used
> # when compiling separate 32/64-bit libraries.
> # OPTIM Defines the common compiler optimization/debugging options
> # for all architectures.
> # OPTIONS Defines other compile-time options (currently only -DDEBUG
> # for extra debug info)
> #
>
> ALL_CFLAGS = -I.. -D_CUPS_SOURCE $(CFLAGS) $(SSLFLAGS) \
> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT $(OPTIONS)
> ALL_CXXFLAGS = -I.. -D_CUPS_SOURCE $(CXXFLAGS) $(SSLFLAGS) \
> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT $(OPTIONS)
> ARCHFLAGS =
> ARFLAGS = crvs
> BACKLIBS =
> BANNERTOPS = bannertops
> BUILDDIRS = filter backend berkeley cgi-bin driver monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates
> CFLAGS =
> COMMONLIBS = -lpthread -lcrypt -lm
> CXXFLAGS =
> CXXLIBS =
> DBUS_NOTIFIER =
> DBUS_NOTIFIERLIBS =
> DNSSD_BACKEND =
> DSOFLAGS = -L../cups
> DSOLIBS = $(COMMONLIBS)
> DNSSDLIBS =
> FONTS = fonts
> IMGLIBS = $(LIBTIFF) $(LIBPNG) $(LIBJPEG) $(LIBZ)
> IMGFILTERS = imagetops imagetoraster
> LAUNCHDLIBS =
> LDFLAGS = -L../cgi-bin -L../cups -L../filter -L../ppdc \
> -L../scheduler \
> -static -fPIE -pie $(OPTIM)
> LEGACY_BACKENDS = parallel
> LINKCUPS = ../cups/libcups.a $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(LIBZ)
> LINKCUPSIMAGE = ../filter/libcupsimage.a
> LIBS = $(LINKCUPS) $(COMMONLIBS)
> OPTIM = -Wall -Wno-format-y2k -Wunused -Os -g -fstack-protector -D_GNU_SOURCE
> OPTIONS =
> PAMLIBS =
> PAP = @PAP@
> PDFTOPS = pdftops
> PHPDIR =
> PHPOPTIONS = -I../.. `$(PHPCONFIG) --includes`
> SERVERLIBS =
> SSLFLAGS =
> SSLLIBS =
> TEXTTOPS = texttops
> UNITTESTS =
>
>
> #
> # Separate 32/64-bit library support...
> #
>
> ARCH32FLAGS =
> DSO32FLAGS =
> INSTALL32 =
> LIB32CUPS =
> LIB32CUPSIMAGE =
> LIB32DIR = $(BUILDROOT)
> UNINSTALL32 =
>
> ARCH64FLAGS =
> DSO64FLAGS =
> INSTALL64 =
> LIB64CUPS =
> LIB64CUPSIMAGE =
> LIB64DIR = $(BUILDROOT)
> UNINSTALL64 =
>
> #
> # Directories...
> #
> # The first section uses the GNU names (which are *extremely*
> # difficult to find in a makefile because they are lowercase...)
> # We have to define these first because autoconf uses ${prefix}
> # and ${exec_prefix} for most of the other directories...
> #
> # The "datarootdir" variable may not get defined if you are using
> # a version of autoconf prior to 2.60.
> #
> # This is immediately followed by definition in ALL CAPS for the
> # needed directories...
> #
>
> bindir = /home/morrisont/workdir/filesys2/bin
> datadir = /home/morrisont/workdir/filesys2/share
> datarootdir = /home/morrisont/workdir/filesys2/share
> exec_prefix = /home/morrisont/workdir/filesys2
> includedir = ${prefix}/include
> infodir = ${datarootdir}/info
> libdir = ${exec_prefix}/lib
> libexecdir = ${exec_prefix}/libexec
> localstatedir = /home/morrisont/workdir/filesys2/var
> mandir = ${datarootdir}/man
> oldincludedir = /usr/include
> prefix = /home/morrisont/workdir/filesys2
> privateinclude =
> sbindir = /home/morrisont/workdir/filesys2/sbin
> sharedstatedir = ${prefix}/com
> srcdir = .
> sysconfdir = /home/morrisont/workdir/filesys2/etc
> top_srcdir = .
>
> BUILDROOT = $(DSTROOT)
>
> AMANDIR = $(BUILDROOT)${datarootdir}/man
> BINDIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/bin
> BUNDLEDIR =
> CACHEDIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/var/cache/cups
> DATADIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/share/cups
> DOCDIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/share/doc/cups
> ICONDIR = /usr/share/icons
> INCLUDEDIR = $(BUILDROOT)$(includedir)
> INITDIR = /etc
> INITDDIR =
> LIBDIR = $(BUILDROOT)$(libdir)
> LOCALEDIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/share/locale
> LOGDIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/var/log/cups
> MANDIR = $(BUILDROOT)${datarootdir}/man
> MENUDIR = /usr/share/applications
> PMANDIR = $(BUILDROOT)${datarootdir}/man
> PRIVATEINCLUDE = $(BUILDROOT)
> RCLEVELS = 2 3 5
> RCSTART = 81
> RCSTOP = 36
> REQUESTS = $(BUILDROOT)/home/morrisont/workdir/filesys2/var/spool/cups
> SBINDIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/sbin
> SERVERBIN = $(BUILDROOT)/home/morrisont/workdir/filesys2/lib/cups
> SERVERROOT = $(BUILDROOT)/home/morrisont/workdir/filesys2/etc/cups
> SMFMANIFESTDIR =
> STATEDIR = $(BUILDROOT)/home/morrisont/workdir/filesys2/var/run/cups
> XINETD = /etc/xinetd.d
>
> MAN1EXT = 1.gz
> MAN5EXT = 5.gz
> MAN7EXT = 7.gz
> MAN8EXT = 8.gz
> MAN8DIR = 8
>
> PAMDIR =
> PAMFILE = pam.std
>
> DEFAULT_LAUNCHD_CONF =
> DBUSDIR = /etc/dbus-1
>
>
> #
> # Rules...
> #
>
> .SILENT:
> .SUFFIXES: .1 .1.gz .1m .1m.gz .3 .3.gz .5 .5.gz .7 .7.gz .8 .8.gz .a .c .cxx .h .man .o .32.o .64.o .gz
>
> .c.o:
> echo Compiling $<...
> $(CC) $(ARCHFLAGS) $(OPTIM) $(ALL_CFLAGS) -c -o $@ $<
>
> .c.32.o:
> echo Compiling 32-bit $<...
> $(CC) $(ARCH32FLAGS) $(OPTIM) $(ALL_CFLAGS) -c -o $@ $<
>
> .c.64.o:
> echo Compiling 64-bit $<...
> $(CC) $(ARCH64FLAGS) $(OPTIM) $(ALL_CFLAGS) -c -o $@ $<
>
> .cxx.o:
> echo Compiling $<...
> $(CXX) $(ARCHFLAGS) $(OPTIM) $(ALL_CXXFLAGS) -c -o $@ $<
>
> .man.1 .man.1m .man.3 .man.5 .man.7 .man.8:
> echo Linking $<...
> $(RM) $@
> $(LN) $< $@
>
> .man.1.gz .man.1m.gz .man.3.gz .man.5.gz .man.7.gz .man.8.gz .man.gz:
> echo -n Compressing $<...
> $(RM) $@
> gzip -v9 <$< >$@
>
>
> #
> # End of "$Id: Makedefs.in 10317 2012-03-01 00:05:55Z mike $"
> #
>
>
>
>
> _______________________________________________
> cups mailing list
> cups at easysw.com
> http://lists.easysw.com/mailman/listinfo/cups
More information about the cups
mailing list