Bug #78668 mysql-workbench can't be built by gcc with "-std=c++11"

Submitted: 1 Oct 2015 12:35 Modified: 26 Oct 2015 6:27
Reporter: Sergey Afonin Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Workbench Severity:S4 (Feature request)
Version:6.3.4 OS:Linux (gcc 5.2.1, libsigc++ 2.6.0)
Assigned to: CPU Architecture:Any

[1 Oct 2015 12:35] Sergey Afonin
Description:
mysql-workbench can't be build by gcc with "-std=c++11". It is needed because libsigc++ version 2.5.1 and later require a C++11-compliant compiler:

http://libsigc.sourceforge.net/stable.shtml

The error:

mysql-workbench-community-6.3.4/library/forms/view.cpp:515:32: error: cannot convert 'boost::signals2::signal<bool()>::result_type {aka boost::optional<bool>}' to 'bool' in return
     return _signal_mouse_leave();
                                ^

How to repeat:
attempt to build with gcc 5.x with "-std=c++11" option.
[15 Oct 2015 10:15] Arek M
After that one it will fail again on:

[100%] Building CXX object library/forms/swig/CMakeFiles/_mforms.dir/mformsPYTHON_wrap.cxx.o
cd /home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/build/library/forms/swig && /usr/bin/x86_64-pld-linux-g++   -DHAVE_PRCTL_H -D__STDC_FORMAT_MACROS -D_mforms_EXPORTS -O2 -fwrapv -pipe -Wformat -Werror=format-security -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2 -Wp,-D_FORTIFY_SOURCE=2 -std=gnu++11 -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -march=x86-64 -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2  -DNDEBUG -DQT_NO_DEBUG -fPIC -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/plugins/migration/copytable -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/library/base -I/usr/include/gtk-2.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/atk-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -I/usr/include/glibmm-2.4 -I/usr/lib64/glibmm-2.4/include -I/usr/include/giomm-2.4 -I/usr/lib64/giomm-2.4/include -I/usr/include/atkmm-1.6 -I/usr/include/cairomm-1.0 -I/usr/lib64/cairomm-1.0/include -I/usr/include/pangomm-1.4 -I/usr/lib64/pangomm-1.4/include -I/usr/include/gdkmm-2.4 -I/usr/lib64/gdkmm-2.4/include -I/usr/include/gtkmm-2.4 -I/usr/lib64/gtkmm-2.4/include -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/library/forms/swig/. -I/usr/include/pixman-1 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/libxml2 -I/usr/include/python2.7 -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/library/grt/src -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/library/forms -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/generated -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/backend/wbpublic -I/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/ext/scintilla/include    -Wno-unused-but-set-variable -Wno-error -Wno-missing-field-initializers -Wno-parentheses -o CMakeFiles/_mforms.dir/mformsPYTHON_wrap.cxx.o -c /home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/build/library/forms/swig/mformsPYTHON_wrap.cxx
/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/build/library/forms/swig/mformsPYTHON_wrap.cxx: In function ‘bool mforms_TabView_call_tab_closing_callback(mforms::TabView*, int)’:
/home/users/arekm/rpm/BUILD/mysql-workbench-community-6.3.4-src/build/library/forms/swig/mformsPYTHON_wrap.cxx:5547:126: error: cannot convert ‘boost::signals2::signal<bool(int)>::result_type {aka boost::optional<bool>}’ to ‘bool’ in return
 SWIGINTERN bool mforms_TabView_call_tab_closing_callback(mforms::TabView *self,int i){ return (*self->signal_tab_closing())(i); }
[22 Oct 2015 12:23] Marcin Szalowicz
gcc5 -std=c++11 patch

Attachment: gcc5.patch (text/x-patch), 1.64 KiB.

[22 Oct 2015 12:23] Marcin Szalowicz
Hi Sergey, Arek
thank you for the bug report, 
please try the patch.
[23 Oct 2015 20:05] Dmitry Smirnov
Thanks, Marcin -- your patch fixed FTBFS on Debian. Nice. :
[25 Oct 2015 9:08] Sergey Afonin
I seems it works, thanks.

Regards, Sergey.

PS: btw: "forms/textbox.cpp" was already fixed in 6.3.4 tarball.
[26 Oct 2015 6:27] Sergey Afonin
I close this FR, thanks again.

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.041 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.