You are not logged in.

#1 2011-07-09 13:29:53

mark7845
Member
Registered: 2010-10-20
Posts: 3

Compile Canon MP495 Scanner Driver

Hi guys,

I am trying to compile a Canon MP495 scanner driver as sane doesn't currently support this scanner. I have base-devel installed.

I downloaded the relevant source code from:

http://www.canon.co.uk/Support/Consumer … e=download

After extracting it I read the README file:

REQUIREMENTS
    You need automake and autoconf to build these programs.
    * automake                (1.9.5 or above)
    * autoconf                (2.59  or above)

    You need the following libraries.
    * Gtk+         (2.6    or above)
    * libgimp      (2.0    or above)
    * libdl        (2.0    or above)
    * libpng       (1.2.8  or above)
    * libusb       (0.1.12 or above)
    * libcncpcmcm  (1.0.0  or above)
    * libcncpmsimg (1.0.0  or above)
    * libcncpmslld (1.0.0  or above)
    * libcncpmsui  (1.0.0  or above)
    * libcncpnet   (1.1.0  or above)

This is where I run into my first problem as the following packages are not available in the core, extra, community or AUR: libgimp libdl libcncpcmcm libcncpmsimg libcncpmslld libcncpmsui libcncpnet

Is there anywhere else I can get the above packages or do they form part of a bigger package?

Anyway I had a go at compiling, with the view that it most likely wouldn't work (which it didn't). The INSTALL file states:

To build and install scangearmp:

        ./autogen.sh
        make
        make install

The output from running autogen.sh:

**Warning**: I am going to run `configure' with no arguments.
If you wish to pass any to it, please specify them on the
`./autogen.sh' command line.

processing .
Creating ./aclocal.m4 ...
Running glib-gettextize...  Ignore non-fatal messages.
Copying file mkinstalldirs
Copying file po/Makefile.in.in

Please add the files
  codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4
  progtest.m4
from the /aclocal directory to your autoconf macro directory
or directly to your aclocal.m4 file.
You will also need config.guess and config.sub, which you can get from
ftp://ftp.gnu.org/pub/gnu/config/.

Making ./aclocal.m4 writable ...
Running aclocal  ...
Running autoheader...
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader: 
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows one to define a template without
autoheader: WARNING: `acconfig.h':
autoheader: 
autoheader: WARNING:   AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader:         [Define if a function `main' is needed.])
autoheader: 
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
Running automake --gnu  ...
configure.in:17: installing `./config.guess'
configure.in:17: installing `./config.sub'
configure.in:15: installing `./install-sh'
configure.in:15: installing `./missing'
backend/Makefile.am: installing `./depcomp'
src/Makefile.am:13: compiling `main.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.in'
Running autoconf ...
Running ./configure --enable-maintainer-mode ...
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking how to print strings... printf
checking for style of include used by make... GNU
checking for gcc... gcc
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 gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert i686-pc-linux-gnu file names to i686-pc-linux-gnu format... func_convert_file_noop
checking how to convert i686-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking for library containing strerror... none required
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for ANSI C header files... (cached) yes
checking for ranlib... (cached) ranlib
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for PACKAGE... yes
checking for GIMP... yes
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes
checking stdio.h usability... yes
checking stdio.h presence... yes
checking for stdio.h... yes
checking libgimp/gimp.h usability... no
checking libgimp/gimp.h presence... no
checking for libgimp/gimp.h... no
checking libgimp/gimpcompat.h usability... no
checking libgimp/gimpcompat.h presence... no
checking for libgimp/gimpcompat.h... no
checking sane/sane.h usability... yes
checking sane/sane.h presence... yes
checking for sane/sane.h... yes
checking for usb_get_busses in -lusb... yes
checking usb.h usability... yes
checking usb.h presence... yes
checking for usb.h... yes
checking for deflate in -lz... yes
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... /usr/bin/msgfmt
checking for dcgettext... yes
checking if msgfmt accepts -c... yes
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for catalogs to be installed...  cs da de el es fi fr hu id it ja ko nl nb pl pt ru sv th tr zh zh_TW
configure: creating ./config.status
config.status: creating Makefile
config.status: creating po/Makefile.in
config.status: creating backend/Makefile
config.status: creating src/Makefile
config.status: creating include/Makefile
config.status: creating etc/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
Now type `make' to compile.

The output from then running sudo make:

make[1]: Entering directory `/home/mark/builds/scangearmp-source-1.60-1/scangearmp'
Making all in po
make[2]: Entering directory `/home/mark/builds/scangearmp-source-1.60-1/scangearmp/po'
file=./`echo cs | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file cs.po
file=./`echo da | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file da.po
file=./`echo de | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file de.po
file=./`echo el | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file el.po
file=./`echo es | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file es.po
file=./`echo fi | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file fi.po
file=./`echo fr | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file fr.po
file=./`echo hu | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file hu.po
file=./`echo id | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file id.po
file=./`echo it | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file it.po
file=./`echo ja | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file ja.po
file=./`echo ko | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file ko.po
file=./`echo nl | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file nl.po
file=./`echo nb | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file nb.po
file=./`echo pl | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file pl.po
file=./`echo pt | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file pt.po
file=./`echo ru | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file ru.po
file=./`echo sv | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file sv.po
file=./`echo th | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file th.po
file=./`echo tr | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file tr.po
file=./`echo zh | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file zh.po
file=./`echo zh_TW | sed 's,.*/,,'`.gmo \
  && rm -f $file && /usr/bin/msgfmt -c -o $file zh_TW.po
make[2]: Leaving directory `/home/mark/builds/scangearmp-source-1.60-1/scangearmp/po'
Making all in backend
make[2]: Entering directory `/home/mark/builds/scangearmp-source-1.60-1/scangearmp/backend'
/bin/sh ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I. -I./include   -DV_MAJOR=1 -DV_MINOR=6 -O2 -D__GIMP_PLUGIN_ENABLE__ -D_FILE_OFFSET_BITS=64 -MT libsane_canon_mfp_la-canon_mfp.lo -MD -MP -MF .deps/libsane_canon_mfp_la-canon_mfp.Tpo -c -o libsane_canon_mfp_la-canon_mfp.lo `test -f 'canon_mfp.c' || echo './'`canon_mfp.c
../libtool: line 792: X--tag=CC: command not found
../libtool: line 825: libtool: ignoring unknown tag : command not found
../libtool: line 792: X--mode=compile: command not found
../libtool: line 942: *** Warning: inferring the mode of operation is deprecated.: command not found
../libtool: line 943: *** Future versions of Libtool will require --mode=MODE be specified.: command not found
../libtool: line 1086: Xgcc: command not found
../libtool: line 1086: X-DHAVE_CONFIG_H: command not found
../libtool: line 1086: X-I.: command not found
../libtool: line 1086: X-I..: command not found
../libtool: line 1086: X-I.: command not found
../libtool: line 1086: X-I./include: No such file or directory
../libtool: line 1086: X-DV_MAJOR=1: command not found
../libtool: line 1086: X-DV_MINOR=6: command not found
../libtool: line 1086: X-O2: command not found
../libtool: line 1086: X-D__GIMP_PLUGIN_ENABLE__: command not found
../libtool: line 1086: X-D_FILE_OFFSET_BITS=64: command not found
../libtool: line 1086: X-MT: command not found
../libtool: line 1086: Xlibsane_canon_mfp_la-canon_mfp.lo: command not found
../libtool: line 1086: X-MD: command not found
../libtool: line 1086: X-MP: command not found
../libtool: line 1086: X-MF: command not found
../libtool: line 1086: X.deps/libsane_canon_mfp_la-canon_mfp.Tpo: No such file or directory
../libtool: line 1086: X-c: command not found
../libtool: line 1137: Xlibsane_canon_mfp_la-canon_mfp.lo: command not found
../libtool: line 1142: libtool: compile: cannot determine name of library object from `': command not found
make[2]: *** [libsane_canon_mfp_la-canon_mfp.lo] Error 1
make[2]: Leaving directory `/home/mark/builds/scangearmp-source-1.60-1/scangearmp/backend'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/mark/builds/scangearmp-source-1.60-1/scangearmp'
make: *** [all] Error 2


So thats where I am up to, any advise/help would be apprechiated. This is the first package I have ever tried to compile.

Mark

Offline

#2 2011-07-10 10:28:30

subnex
Member
Registered: 2009-08-10
Posts: 15

Re: Compile Canon MP495 Scanner Driver

Created packagebuilds foor the 64 bit version. Working on my pc at least.

https://aur.archlinux.org/packages.php?ID=50612

Should be easy to modify to 32 bit if neccesary

Last edited by subnex (2011-07-10 13:00:35)

Offline

Board footer

Powered by FluxBB