[sane-devel] Ubuntu 16.04 LTS cannot build recent Genesys backend

Rolf Bensch rolf at bensch-online.de
Sat Aug 17 16:47:13 BST 2019


Hi Povilas,

I just mentioned that your last work cannot be built from Ubuntu 16.04 LTS.

This is the error message from Launchpad
(https://launchpadlibrarian.net/437734018/buildlog_ubuntu-xenial-amd64.sane-backends_1.0.28+git20190817-xenial0_BUILDING.txt.gz):

/bin/bash ../libtool --silent  --tag=CXX   --mode=compile x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../include/sane  -D_REENTRANT -DPATH_SANE_CONFIG_DIR=/etc/sane.d 	  -DPATH_SANE_DATA_DIR=/usr/share 	  -DPATH_SANE_LOCK_DIR=/var/lock/sane 	  -DV_MAJOR=1 -DV_MINOR=0 -I. -I. -I../include -I../include -I/usr/include/libusb-1.0 -DLIBDIR="\"/usr/lib/x86_64-linux-gnu/sane\"" -DDEB_DLL_LIBDIR="\"/usr/lib/x86_64-linux-gnu/sane:/usr/lib/sane\"" -DBACKEND_NAME=genesys  -Wall -Wextra -pedantic -std=gnu++11 -MT libgenesys_la-genesys.lo -MD -MP -MF .deps/libgenesys_la-genesys.Tpo -c -o libgenesys_la-genesys.lo `test -f 'genesys.cc' || echo './'`genesys.cc
genesys.cc: In function ‘void sanei_genesys_calculate_zmod(SANE_Bool, uint32_t, const std::vector<short unsigned int>&, unsigned int, unsigned int, unsigned int, uint32_t*, uint32_t*)’:
genesys.cc:1251:49: error: wrong number of template arguments (0, should be 1)
                                    0, std::plus<>());
                                                 ^
In file included from /usr/include/c++/5/string:48:0,
                 from /usr/include/c++/5/bits/locale_classes.h:40,
                 from /usr/include/c++/5/bits/ios_base.h:41,
                 from /usr/include/c++/5/ios:42,
                 from /usr/include/c++/5/ostream:38,
                 from /usr/include/c++/5/iostream:39,
                 from genesys_enums.h:47,
                 from genesys_sensor.h:47,
                 from genesys_calibration.h:47,
                 from genesys_device.h:47,
                 from genesys_low.h:84,
                 from genesys.h:54,
                 from genesys.cc:63:
/usr/include/c++/5/bits/stl_function.h:167:12: note: provided for ‘template<class _Tp> struct std::plus’
     struct plus : public binary_function<_Tp, _Tp, _Tp>
            ^

I get the same error if I switch to '-std=c++11' and / or build SANE in
a Xenial VM. It seems to be a problem with 'old' gcc 5.x libraries.

Please fix this or give me a hint for additional compiler options.

Many thanks in advance.

Cheers,
Rolf

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/sane-devel/attachments/20190817/8c1e9f95/attachment.html>


More information about the sane-devel mailing list