Bug #32184 'SigC' has not been declared
Submitted: 8 Nov 2007 12:32 Modified: 17 Nov 2008 20:50
Reporter: Oden Eriksson Email Updates:
Status: Won't fix Impact on me:
None 
Category:MySQL GUI Common Severity:S3 (Non-critical)
Version:0.6.1 OS:Linux
Assigned to: Alfredo Kojima CPU Architecture:Any
Tags: Contribution

[8 Nov 2007 12:32] Oden Eriksson
Description:
When I try to build mysql-gui-tools-5.0r12 on Mandriva Linux 2008.0 and Cooker I get a build error as shown below:

make[3]: Entering directory `/home/oden/RPM/BUILD/mysql-gui-tools-5.0r12/mysql-gui-common/source/linux'
g++ -DHAVE_CONFIG_H -I. -I../.. -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/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtkmm-2.4 -I/usr/lib64/gtkmm-2.4/include -I/usr/include/glibmm-2.4 -I/usr/lib64/glibmm-2.4/include -I/usr/include/gdkmm-2.4 -I/usr/lib64/gdkmm-2.4/include -I/usr/include/pangomm-1.4 -I/usr/include/atkmm-1.6 -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -I/usr/include/cairomm-1.0   -I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fexceptions -fstack-protector-all -fPIC -fstack-protector  -DHAVE_UNICODE_PCRE  -DENABLE_LUA_MODULES -DENABLE_PYTHON_MODULES -DENABLE_FASTCGI -I/usr/include/freetype2    -I/usr/include/python2.5 -I../../library/base-library/include -I../../library/utilities/include -I../../library/utilities/shared_include -I../../library/generic-runtime/include -I../../library/sql-parser/include -I../../library/grt-modules/include -I../../library/grt-wb-controller/include -I../../library/generic-canvas/include -I../../library/generic-canvas/ftgl/include -I.. -DDATADIRNAME=\""share"\" -DCOMMONDIRNAME=\"""\"    -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fexceptions -Wall -MT MGConnectDialog.o -MD -MP -MF .deps/MGConnectDialog.Tpo -c -o MGConnectDialog.o MGConnectDialog.cc
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:56: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc: In member function 'void MGConnectDialog::open_connection_editor()':
MGConnectDialog.cc:662: error: 'SigC' has not been declared
MGConnectDialog.cc:662: error: expected `;' before 'c1'
MGConnectDialog.cc:664: error: 'SigC' has not been declared
MGConnectDialog.cc:664: error: expected `;' before 'c2'
MGConnectDialog.cc:670: error: 'c1' was not declared in this scope
MGConnectDialog.cc:671: error: 'c2' was not declared in this scope
MGConnectDialog.cc: In member function 'void MGConnectDialog::show_connection_failed()':
MGConnectDialog.cc:679: error: 'SigC' has not been declared
MGConnectDialog.cc:679: error: expected `;' before 'input_handler'
MGConnectDialog.cc:689: warning: deprecated conversion from string constant to 'char*'
MGConnectDialog.cc:717: error: 'input_handler' was not declared in this scope
MGConnectDialog.cc:752: error: 'input_handler' was not declared in this scope
make[3]: *** [MGConnectDialog.o] Error 1
make[3]: Leaving directory `/home/oden/RPM/BUILD/mysql-gui-tools-5.0r12/mysql-gui-common/source/linux'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/oden/RPM/BUILD/mysql-gui-tools-5.0r12/mysql-gui-common/source'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/oden/RPM/BUILD/mysql-gui-tools-5.0r12/mysql-gui-common'
make: *** [all] Error 2

Here is a list of the involved build dependencies and their versions:
gcc-c++-4.2.2-0.RC.1mdv2008.0
glibc-devel-2.6.1-4mdv2008.0
autoconf-2.61-6mdv2008.0
automake-1.10-2mdv2008.0
libtool-1.5.22-3mdv2008.0
lib64mysql-devel-5.0.45-8mdv2008.0
lib64expat1-devel-2.0.1-4mdv2008.0
gettext-devel-0.16.1-4mdv2008.0
lib64glib2.0_0-devel-2.14.1-2mdv2008.0
lib64glibmm2.4-devel-2.14.0-1mdv2008.0
lib64gtk+2.0_0-devel-2.12.1-2.1mdv2008.0
lib64gtkmm2.4-devel-2.12.0-1mdv2008.0
lib64ext2fs-devel-1.40.2-5mdv2008.0
lib64glade2.0_0-devel-2.6.2-3mdv2008.0
lib64sigc++2.0-devel-2.1.1-2mdv2008.0
lib64slang1-devel-1.4.9-10mdv2007.1
lib64xml2-devel-2.6.30-1mdv2008.0
lib64fcgi0-devel-2.4.0-9mdv2008.0
lib64gtkhtml-3.14-devel-3.16.0-1mdv2008.0
lib64lua5.0-devel-5.0.3-4mdv2008.0
lib64mesagl1-devel-7.0.1-10mdv2008.0
lib64mesaglu1-devel-7.0.1-10mdv2008.0
lib64ncurses-devel-5.6-1.20070901.3mdv2008.0
lib64pcre-devel-7.3-1mdv2008.0
pkgconfig-0.21-1mdv2008.0
lib64python2.5-devel-2.5.1-5mdv2008.0
lib64readline5-devel-5.2-6mdv2008.0
lib64termcap-devel-2.0.8-43mdv2008.0
lib64gnomeprint2-2-devel-2.18.2-1mdv2008.0

How to repeat:
1. Install Mandriva Linux 2008 (x86_32 or x86_64)

2. Get the src.rpm package:
wget ftp://ftp.sunet.se/pub/Linux/distributions/Mandriva/official/2008.0/SRPMS/contrib/release/...

3. Install dependencies:
urpmi -s mysql-gui-tools-5.0-1.r12.1mdv2008.0.src.rpm

4. Build the package:
rpm --rebuild mysql-gui-tools-5.0-1.r12.1mdv2008.0.src.rpm
[8 Nov 2007 17:11] Oden Eriksson
this patch fixes the build.

Attachment: mysql-gui-tools-sigc_2.1.1_api_fixes.diff (text/x-patch), 8.61 KiB.

[8 Nov 2007 17:13] Oden Eriksson
The attached patch fixes the build. It should be safe to apply it since it fixes functions that has been deprecated since 2004.
[14 Nov 2007 14:44] MySQL Verification Team
Thank you for the bug report. Could you please try to build with our source
package: http://dev.mysql.com/downloads/gui-tools/5.0.html and comment the
result here?. Thanks in advance.
[14 Nov 2007 14:54] Oden Eriksson
mysql-gui-tools-5.0-1.r12.1mdv2008.0.src.rpm contains the official source tarball from http://dev.mysql.com/downloads/gui-tools/5.0.html.
[6 Dec 2007 20:19] Susanne Ebrecht
Thank you for your interest in the MySQL graphical administration tools. We recommend that you use our MySQL Administrator and MySQL Query Browser.  The MySQLGUI and MySQL Command Center legacy products are deprecated, and we are no longer maintaining those projects.

For more information on MySQL Administrator, see:
http://www.mysql.com/products/administrator/
[7 Dec 2007 17:06] Oden Eriksson
You closed this as "Won't fix", why?

You can easily add autoconf and ifdefs magic to support different versions of sigc yourself.
[10 Dec 2007 10:33] Michael G. Zinner
Oden,

Thanks for your patch, this is great. We are going to fix this when we will work on the next release for the GUI Tools Bundle. It was my mistake that the status was set wrong, sorry about that.

Mike
[9 Jul 2008 14:38] John mm
I have been fighting with compiling Mysql-gui-tools-5.0r12 on Solaris 10 with gcc 4.3.1 and ran into this exact issue when compiling the gui-common tools.  This patch along with adding a few include statements, got the gui-common tools to compile.   However, I am seeing the  error when compiling the mysql-geury-browser:

In file included from MQWorkArea.h:39,
                 from MQMainWindow.cc:19:
MQResultTab.h:47: error: 'Sigc' has not been declared
MQResultTab.h:47: error: ISO C++ forbids declaration of 'connection' with no type
MQResultTab.h:47: error: expected ';' before 'scroll_con'
MQResultTab.h:72: error: 'Sigc' has not been declared
MQResultTab.h:72: error: ISO C++ forbids declaration of 'connection' with no type
MQResultTab.h:72: error: expected ';' before '_sync_con1'
make[3]: *** [MQMainWindow.o] Error 1
make[3]: Leaving directory `/tmp/mysql-gui-tools-5.0r12/mysql-query-browser/source/linux'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/mysql-gui-tools-5.0r12/mysql-query-browser/source/linux'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/mysql-gui-tools-5.0r12/mysql-query-browser/source'
make: *** [all-recursive] Error 1
bash-2.01$

think this is related to coding incompatable with stricter C++ conventions, but can't seem  to figure out the fix (not a C++ programmer).  Has there been any progress on this issue, or anyone have suggestions ?

Thanks,

John
[17 Nov 2008 20:32] Scott Harmon
Having a similar issue with mysql-gui-tools-5.0r14 with gcc 4.2.3
[17 Nov 2008 20:50] Oden Eriksson
Don't hold your breath.

My experience of mysql ab, now sun is this. After one whole year of neglecting maintaining these "open source gui tools" can only mean this: this product will be fragmented and released as commercial tools from now on. Go figure!
[19 Nov 2008 19:43] John mm
I eventually gave up on it.  The more I investigated, the more it looked like it might be the version of gnome libraries that install with Solaris 10.  I did not feel like compiling the latest version of gnome.  A better approach might be to use the latest OpenSolaris OS, that does have the newer versions of gnome, and probably will compile  msql-gui better.

John
[8 Dec 2008 2:52] Mark Johnson
The original error reported by Oden continues to occur on Slackware 12.1 with mysql gui tools 5.0r14.
[13 Mar 2014 13:36] Omer Barnir
This bug is not scheduled to be fixed at this time.