[SyncEvolution] Fails to build with boost 1.73.0

Milan Crha mcrha at redhat.com
Fri Jul 3 15:34:29 UTC 2020


	Hi,
I'm rebuilding SyncEvolution 1.5.3 under Fedora Rawhide (to be Fedora 33),
which has boost 1.73.0 and this boost version has changed behavior of
the bind.hpp, as shown in the build log:

   In file included from /usr/include/boost/bind.hpp:30,
                    from ./src/syncevo/GLibSupport.h:41,
                    from src/syncevo/ForkExec.h:30,
                    from src/syncevo/ForkExec.cpp:20:
   /usr/include/boost/bind.hpp:36:1: note: '#pragma message: The
   practice of declaring the Bind placeholders (_1, _2, ...) in the
   global namespace is deprecated. Please use <boost/bind/bind.hpp> +
   using namespace boost::placeholders, or define
   BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.'
      36 | BOOST_PRAGMA_MESSAGE(

The above is only a message, which leads to a build break later in the
sources:

   src/syncevo/Cmdline.cpp: In member function 'bool SyncEvo::Cmdline::run()':
   src/syncevo/Cmdline.cpp:1426:65: error: '_1' was not declared in this scope
    1426 |             processLUIDs(source, boost::bind(ShowLUID, logging, _1));

Declaring the BOOST_BIND_GLOBAL_PLACEHOLDERS mutes the message, but it
doesn't fix the build.

I'd propose a patch, but I do not know a single bit of the boost
library. I'm sorry.

	Bye,
	Milan
_______________________________________________
SyncEvolution mailing list -- syncevolution at syncevolution.org
To unsubscribe send an email to syncevolution-leave at syncevolution.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s



More information about the SyncEvolution mailing list