Bug #60603 | Build fails with gcc 4.6 | ||
---|---|---|---|
Submitted: | 23 Mar 2011 16:28 | Modified: | 31 Aug 2011 0:51 |
Reporter: | Remi Collet (OCA) | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Workbench | Severity: | S3 (Non-critical) |
Version: | 5.2.33b | OS: | Linux (fedora 15) |
Assigned to: | CPU Architecture: | Any | |
Tags: | Contribution |
[23 Mar 2011 16:28]
Remi Collet
[23 Mar 2011 16:28]
Remi Collet
Another error (the -fpermissive option is a workaround) /bin/sh ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../.. -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -I/usr/include/python2.7 -DENABLE_LUA_MODULES -DENABLE_PYTHON_MODULES -pthread -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing -fwrapv -fPIC -fPIC -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1 -I../../library/grt/src -I../../library/base -I../../library/forms -I../../library/forms/mforms/ -I../../library/canvas/src -I../../ext/cppconn -I../../library/dbc/src -I../../ext/vsqlite++/include -I../../backend/wbpublic -I../../generated -I../../modules -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wextra -Wall -Wno-unused -Wno-deprecated -DTIXML_USE_STL=1 -c -o sqlide_generics.lo `test -f 'sqlide/sqlide_generics.cpp' || echo './'`sqlide/sqlide_generics.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../.. -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -I/usr/include/python2.7 -DENABLE_LUA_MODULES -DENABLE_PYTHON_MODULES -pthread -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing -fwrapv -fPIC -fPIC -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1 -I../../library/grt/src -I../../library/base -I../../library/forms -I../../library/forms/mforms/ -I../../library/canvas/src -I../../ext/cppconn -I../../library/dbc/src -I../../ext/vsqlite++/include -I../../backend/wbpublic -I../../generated -I../../modules -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wextra -Wall -Wno-unused -Wno-deprecated -DTIXML_USE_STL=1 -c sqlide/sqlide_generics.cpp -fPIC -DPIC -o .libs/sqlide_generics.o sqlide/sqlide_generics.cpp:41:28: error: uninitialized const 'sqlide::is_var_type_eq_to' [-fpermissive] sqlide/sqlide_generics.cpp:35:7: note: 'const class sqlide::IsVarTypeEqTo' has no user-provided default constructor make[3]: *** [sqlide_generics.lo] Error 1
[23 Mar 2011 16:29]
Remi Collet
Another (missing include) libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../.. -I../../generated -I../../backend/wbpublic -I../../library/grt/src -I../../library/base -I../../modules -I../../library/grt/src/diff -I../../ext/vsqlite++/include -I../../library/sql-parser/include -I../../library/sql-parser/source -I/usr/include/python2.7 -DENABLE_LUA_MODULES -DENABLE_PYTHON_MODULES -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpermissive -Wextra -Wall -Wno-unused -Wno-deprecated -DTIXML_USE_STL=1 -c src/db_mysql_params.cpp -fPIC -DPIC -o .libs/db_mysql_params.o In file included from /usr/include/ctemplate/template.h:50:0, from src/db_mysql_catalog_report.h:13, from src/db_mysql_catalog_report.cpp:4: /usr/include/ctemplate/template_dictionary.h:73:11: error: 'ptrdiff_t' does not name a type make[3]: *** [db_mysql_catalog_report.lo] Error 1
[23 Mar 2011 16:29]
Remi Collet
Another (could be relative to gtkmm24 version 2.24.0 or gcc 4.6) libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../frontend/linux -I../../../backend/wbpublic -I../../../backend/wbprivate -I../../../generated -I../../../library/forms -I../../../library/canvas/src -I../../../library/grt/src -I../../../library/base -I../../../library/dbc/src -I../../../ext/cppconn -I../../../ext/vsqlite++/include -I../../../ext/scintilla/include -I/usr/include/python2.7 -DENABLE_LUA_MODULES -DENABLE_PYTHON_MODULES -pthread -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -pthread -I/usr/include/libglade-2.0 -I/usr/include/gtk-2.0 -I/usr/include/libxml2 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtkmm-2.4 -I/usr/lib64/gtkmm-2.4/include -I/usr/include/atkmm-1.6 -I/usr/include/giomm-2.4 -I/usr/lib64/giomm-2.4/include -I/usr/include/pangomm-1.4 -I/usr/lib64/pangomm-1.4/include -I/usr/include/gtk-unix-print-2.0 -I/usr/include/gdkmm-2.4 -I/usr/lib64/gdkmm-2.4/include -I/usr/include/glibmm-2.4 -I/usr/lib64/glibmm-2.4/include -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -I/usr/include/cairomm-1.0 -I/usr/lib64/cairomm-1.0/include -DORBIT2=1 -D_REENTRANT -pthread -I/usr/include/libgnome-2.0 -I/usr/include/orbit-2.0 -I/usr/include/gconf/2 -I/usr/include/gnome-vfs-2.0 -I/usr/lib64/gnome-vfs-2.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpermissive -Wextra -Wall -Wno-unused -Wno-deprecated -DTIXML_USE_STL=1 -c ../linux_utilities/toolbar_manager.cpp -fPIC -DPIC -o .libs/toolbar_manager.o ../linux_utilities/toolbar_manager.cpp: In function 'Gtk::ComboBox* create_color_combo(const std::vector<std::basic_string<char> >&, const string&)': ../linux_utilities/toolbar_manager.cpp:34:48: error: call of overloaded 'ComboBox(Glib::RefPtr<Gtk::ListStore>&)' is ambiguous ../linux_utilities/toolbar_manager.cpp:34:48: note: candidates are: /usr/include/gtkmm-2.4/gtkmm/combobox.h:145:12: note: Gtk::ComboBox::ComboBox(bool) /usr/include/gtkmm-2.4/gtkmm/combobox.h:137:12: note: Gtk::ComboBox::ComboBox(const Glib::RefPtr<Gtk::TreeModel>&) ../linux_utilities/toolbar_manager.cpp: In member function 'void ToolbarManager::add_toolbar_item(Gtk::Box*, const bec::ToolbarItem&, bool)': ../linux_utilities/toolbar_manager.cpp:78:10: warning: enumeration value 'ToolbarSearch' not handled in switch [-Wswitch] make[4]: *** [toolbar_manager.lo] Erreur 1
[23 Mar 2011 16:30]
Remi Collet
The last one libtool: link: g++ -rdynamic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpermissive -Wextra -Wall -Wno-unused -Wno-deprecated -DTIXML_USE_STL=1 -o .libs/mysql-workbench-bin main.o program.o main_form.o overview_panel.o model_panel.o model_diagram_panel.o menu_manager.o catalog_tree.o layer_tree.o properties_tree.o history_tree.o navigator_box.o info_box.o documentation_box.o user_types_box.o find_panel.o diagram_size_form.o validation_panel.o sqlide_form.o sql_snippets_view.o sqlide_main.o new_server_instance_wizard.o grt_code_editor.o server_instance_editor.o grt_python_debugger.o advanced_sidebar.o -pthread -pthread /usr/lib64/libpython2.7.so -pthread -Wl,--export-dynamic ../../../library/forms/.libs/libmforms.so ../../../frontend/linux/linux_utilities/.libs/liblinux_utilities.so /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/frontend/linux/sqlide/.libs/libsqlide.so ../../../frontend/linux/sqlide/.libs/libsqlide.so /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/ext/scintilla/gtk/.libs/libwbscintilla.so ../../../backend/wbprivate/libwbprivate.a ../../../backend/wbpublic/.libs/libwbpublic.so /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/library/canvas/src/.libs/libmdcanvas.so /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/library/forms/.libs/libmforms.so -lgnome-keyring -ltinyxml /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/library/dbc/.libs/libcdbc.so /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/ext/vsqlite++/src/sqlite/.libs/libvsqlitepp.so ../../../library/base/.libs/libwbbase.so ../../../library/grt/src/.libs/libgrt.so /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/library/base/.libs/libwbbase.so ../../../library/dbc/.libs/libcdbc.so -L/usr/lib64/mysql ../../../library/canvas/src/.libs/libmdcanvasgtk.so ../../../library/canvas/src/.libs/libmdcanvas.so ../../../ext/cppconn/driver/.libs/mysqlcppconn.so -lctemplate -lglade-2.0 -lgtkmm-2.4 -latkmm-1.6 -lgdkmm-2.4 -lgiomm-2.4 -lpangomm-1.4 -lgtk-x11-2.0 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lpng12 -lpango-1.0 -lfreetype -lfontconfig -lgnome-2 -lpopt -lbonobo-2 -lbonobo-activation -lORBit-2 -lgobject-2.0 -llua -luuid -lpcre -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lxml2 -lcairo -lGL -lzip -lmysqlclient -lpthread -lz -lm -lrt -lssl -lcrypto -ldl -lsqlite3 -lX11 -pthread -Wl,-rpath -Wl,/usr/lib64/mysql-workbench ../../../backend/wbprivate/libwbprivate.a(wb_context.o): In function `WBContext': /builddir/build/BUILD/mysql-workbench-gpl-5.2.33-src/backend/wbprivate/workbench/wb_context.cpp:206: undefined reference to `wb::register_all_metaclasses()' ../../../library/forms/.libs/libmforms.so: undefined reference to `mforms::_mforms_main_thread' collect2: ld returned 1 exit status
[23 Mar 2011 16:31]
Remi Collet
Patch for gcc46
Attachment: mysql-workbench-5.2.33-gcc46.patch (text/x-diff), 4.79 KiB.
[23 Mar 2011 17:03]
Remi Collet
The provided patch is probably not a very good one and should be improved by a C++ expert. If this could help, here is the full build log for fedora repository (of course, with the patch applied): i686 target : http://koji.fedoraproject.org/koji/getfile?taskID=2936984&name=build.log x86_64 target : http://koji.fedoraproject.org/koji/getfile?taskID=2936983&name=build.log There is a lot of warnings which probably should be investigated. Regards, Remi (fedora contributor, mysql-workbench maintainer)
[10 Apr 2011 15:29]
Peter Volkov
With this patch I've go a different problem: *** Warning: Linking the executable mysql-workbench-bin against the loadable module *** mysqlcppconn.so is not portable! libtool: link: x86_64-pc-linux-gnu-g++ -rdynamic -O2 -pipe -march=native -mtune=native -ggdb -Wextra -Wall -Wno-unused -Wno-deprecated -DTIXML_USE_STL=1 -Wl,--as-needed -Wl,--hash-style=gnu -o .libs/mysql-workbench-bin main.o program.o main_form.o overview_panel.o model_panel.o model_diagram_panel.o menu_manager.o catalog_tree.o layer_tree.o properties_tree.o history_tree.o navigator_box.o info_box.o documentation_box.o user_types_box.o find_panel.o diagram_size_form.o validation_panel.o sqlide_form.o sql_snippets_view.o sqlide_main.o new_server_instance_wizard.o grt_code_editor.o server_instance_editor.o grt_python_debugger.o advanced_sidebar.o -pthread -pthread -pthread -Wl,--export-dynamic -Wl,--as-needed -Wl,--hash-style=gnu -rdynamic ../../../library/forms/.libs/libmforms.so -L/usr/lib64 ../../../frontend/linux/linux_utilities/.libs/liblinux_utilities.so /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/frontend/linux/sqlide/.libs/libsqlide.so ../../../frontend/linux/sqlide/.libs/libsqlide.so /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/ext/scintilla/gtk/.libs/libwbscintilla.so ../../../backend/wbprivate/libwbprivate.a ../../../backend/wbpublic/.libs/libwbpublic.so /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/library/canvas/src/.libs/libmdcanvas.so /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/library/forms/.libs/libmforms.so /usr/lib64/libgnome-keyring.so /usr/lib64/libgcrypt.so /usr/lib64/libgpg-error.so /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/library/dbc/.libs/libcdbc.so /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/ext/vsqlite++/src/sqlite/.libs/libvsqlitepp.so ../../../library/base/.libs/libwbbase.so ../../../library/grt/src/.libs/libgrt.so /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/library/base/.libs/libwbbase.so ../../../library/dbc/.libs/libcdbc.so -L/usr/lib64/mysql -L/usr//lib -L/usr/lib/ ../../../library/canvas/src/.libs/libmdcanvasgtk.so ../../../library/canvas/src/.libs/libmdcanvas.so ../../../ext/cppconn/driver/.libs/mysqlcppconn.so /usr/lib64/mysql/libmysqlclient_r.so /usr/lib64/libctemplate.so /usr/lib64/libglade-2.0.so /usr/lib64/libgtkmm-2.4.so /usr/lib64/libatkmm-1.6.so /usr/lib64/libgdkmm-2.4.so -lgiomm-2.4 /usr/lib64/libpangomm-1.4.so /usr/lib64/libgtk-x11-2.0.so -lglibmm-2.4 /usr/lib64/libcairomm-1.0.so /usr/lib64/libsigc-2.0.so /usr/lib64/libgdk-x11-2.0.so /usr/lib64/libatk-1.0.so /usr/lib64/libpangocairo-1.0.so /usr/lib64/libpangoft2-1.0.so /usr/lib64/libgdk_pixbuf-2.0.so /usr/lib64/libpango-1.0.so /usr/lib64/libgnome-2.so /usr/lib64/libgnomevfs-2.so /usr/lib64/libgconf-2.so -ldbus-glib-1 -ldbus-1 -lutil /usr/lib64/libgio-2.0.so -lresolv /usr/lib64/libcanberra.so /usr/lib64/libvorbisfile.so /usr/lib64/libvorbis.so /usr/lib64/libltdl.so -logg -lpopt /usr/lib64/libbonobo-2.so /usr/lib64/libbonobo-activation.so /usr/lib64/libORBitCosNaming-2.so /usr/lib64/libORBit-2.so /usr/lib64/libgobject-2.0.so //usr/lib64//liblua.so -luuid -lpython2.6 -lpcre /usr/lib64/libgthread-2.0.so /usr/lib64/libgmodule-2.0.so /usr/lib64/libglib-2.0.so -lrt /usr/lib64/libxml2.so -licudata /usr/lib64/libcairo.so /usr/lib64/libpixman-1.so /usr/lib64/libfontconfig.so /usr/lib64/libexpat.so /usr/lib64/libfreetype.so -lEGL /usr/lib64/libpng14.so /usr/lib64/libxcb-shm.so /usr/lib64/libxcb-render.so -lXrender /usr/lib64/libxcb.so /usr/lib64/libXau.so /usr/lib64/libXdmcp.so -lGL /usr/lib64/libzip.so -lmysqlclient_r -lz -lcrypt -lnsl -lm -lssl -lcrypto /usr/lib64/libsqlite3.so -ldl -lpthread -licui18n -licuuc -lX11 -pthread -Wl,-rpath -Wl,/usr/lib64/mysql-workbench -Wl,-rpath -Wl,//usr/lib64/ -Wl,-rpath -Wl,/usr/lib64/mysql ../../../backend/wbprivate/libwbprivate.a(wb_context.o): In function `WBContext': /vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/backend/wbprivate/workbench/wb_context.cpp:206: undefined reference to `register_all_metaclasses()' ../../../library/forms/.libs/libmforms.so: undefined reference to `_mforms_main_thread' ../../../library/grt/src/.libs/libgrt.so: undefined reference to `myx_grt_shell_show_help(grt::GRT*, char const*)' ../../../library/grt/src/.libs/libgrt.so: undefined reference to `grt_shell_show_python_help(grt::GRT*, char const*)' collect2: ld returned 1 exit status make[4]: *** [mysql-workbench-bin] Ошибка 1 make[4]: Выход из каталога `/vt/portage/tmp/portage/dev-db/mysql-workbench-5.2.33/work/mysql-workbench-gpl-5.2.33-src/frontend/linux/workbench'
[10 Apr 2011 18:17]
Hans de Graaff
I can confirm that the Gtk::Combobox related issue is indeed related to gtkmm 2.24.0, and also occurs with gcc 4.5.
[5 May 2011 15:39]
Qiu Wenh
build fail on ubuntu 11.04.
[5 May 2011 15:40]
Qiu Wenh
libtool: link: g++ -Wextra -Wall -Wno-unused -Wno-deprecated -DTIXML_USE_STL=1 /usr/lib/libpython2.7.so -pthread -Wl,--export-dynamic -o .libs/genobj genobj.o ../../library/grt/src/.libs/libgrt.so ../../library/base/.libs/libwbbase.so /usr/lib/liblua5.1.so -luuid -L/usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/libgthread-2.0.so /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so -lrt /usr/lib/x86_64-linux-gnu/libglib-2.0.so /usr/lib/libxml2.so -lpcre /usr/lib/libsigc-2.0.so -pthread -Wl,-rpath -Wl,/opt/worktable/dbtool/mysql_workbench/lib/mysql-workbench ../../library/grt/src/.libs/libgrt.so: undefined reference to `myx_grt_shell_show_help(grt::GRT*, char const*)' ../../library/grt/src/.libs/libgrt.so: undefined reference to `grt_shell_show_python_help(grt::GRT*, char const*)' collect2: ld returned 1 exit status
[28 May 2011 7:09]
Remi Collet
For 5.2.34, the only fix needed is the missing include <cstddef> in db_mysql_catalog_report.h (tested on fedora 15, gcc 4.6.0-7)
[28 May 2011 7:11]
Remi Collet
mysql-workbench-5.2.34-gcc46.patch
Attachment: mysql-workbench-5.2.34-gcc46.patch (application/x-awk, text), 542 bytes.
[28 May 2011 9:38]
Remi Collet
FYI, build successfully (with this small patch) in fedora 15 : gcc 4.6.0 fedora 14 : gcc 4.5.1 fedora 13 : gcc 4.4.5 fedora 12 : gcc 4.4.4
[12 Jun 2011 15:45]
Lee Clemens
Patch from Bug #61313 was also required to resolve: /src/ctemplate/template_dictionary.h:73:11: error: 'ptrdiff_t' does not name a type
[31 Aug 2011 0:51]
Philip Olson
Fixed as of 5.2.35: + &workbench; would not compile with GNU C Compiler (GCC) version + 4.6.