Description:
I've tried to compile 5.0.12 on newer toolchain:
autoconf 2.63-1
automake 1.10.2-1
bin86 0.16.17-4
bison 2.4.1-1
ed 1.2-1
fakeroot 1.12.2-2
flex 2.5.35-1
gcc 4.4.0-1
libtool 2.2.6a-1
m4 1.4.13-1
make 3.81-4
patch 2.5.9-2
pkgconfig 0.23-1
There are a bunch of errors like this one which i managed to fixed then making a patch.
mysql_art_resultset.cpp:57: error: ‘snprintf’ was not declared in this scope
mysql_art_resultset.cpp:63: error: ‘snprintf’ was not declared in this scope
mysql_art_resultset.cpp:69: error: ‘snprintf’ was not declared in this scope
mysql_art_resultset.cpp:75: error: ‘snprintf’ was not declared in this scope
Those was easy to fix but now i'm stuck and i can't manage to fix it.
In file included from ../../ext/boost/mpl/apply.hpp:23,
from ../../ext/boost/iterator/iterator_facade.hpp:34,
from ../../ext/boost/iterator/iterator_adaptor.hpp:15,
from ../../ext/boost/iterator/reverse_iterator.hpp:12,
from ../../ext/boost/range/reverse_iterator.hpp:20,
from ../../ext/boost/range/rend.hpp:19,
from ../../ext/boost/foreach.hpp:72,
from src/mysql_sql_inserts_loader.cpp:5:
../../ext/boost/mpl/apply_wrap.hpp:81:31: error: missing binary operator before token "("
../../ext/boost/mpl/apply_wrap.hpp:173:31: error: missing binary operator before token "("
In file included from ../../ext/boost/mpl/bind.hpp:27,
from ../../ext/boost/mpl/lambda.hpp:18,
from ../../ext/boost/mpl/apply.hpp:25,
from ../../ext/boost/iterator/iterator_facade.hpp:34,
from ../../ext/boost/iterator/iterator_adaptor.hpp:15,
from ../../ext/boost/iterator/reverse_iterator.hpp:12,
from ../../ext/boost/range/reverse_iterator.hpp:20,
from ../../ext/boost/range/rend.hpp:19,
from ../../ext/boost/foreach.hpp:72,
from src/mysql_sql_inserts_loader.cpp:5:
../../ext/boost/mpl/apply_wrap.hpp:81:31: error: missing binary operator before token "("
../../ext/boost/mpl/apply_wrap.hpp:173:31: error: missing binary operator before token "("
In file included from ../../ext/boost/mpl/lambda.hpp:18,
from ../../ext/boost/mpl/apply.hpp:25,
from ../../ext/boost/iterator/iterator_facade.hpp:34,
from ../../ext/boost/iterator/iterator_adaptor.hpp:15,
from ../../ext/boost/iterator/reverse_iterator.hpp:12,
from ../../ext/boost/range/reverse_iterator.hpp:20,
from ../../ext/boost/range/rend.hpp:19,
from ../../ext/boost/foreach.hpp:72,
from src/mysql_sql_inserts_loader.cpp:5:
../../ext/boost/mpl/bind.hpp:364:31: error: missing binary operator before token "("
../../ext/boost/mpl/bind.hpp:531:31: error: missing binary operator before token "("
In file included from ../../ext/boost/mpl/lambda.hpp:22,
from ../../ext/boost/mpl/apply.hpp:25,
from ../../ext/boost/iterator/iterator_facade.hpp:34,
from ../../ext/boost/iterator/iterator_adaptor.hpp:15,
from ../../ext/boost/iterator/reverse_iterator.hpp:12,
from ../../ext/boost/range/reverse_iterator.hpp:20,
from ../../ext/boost/range/rend.hpp:19,
from ../../ext/boost/foreach.hpp:72,
from src/mysql_sql_inserts_loader.cpp:5:
../../ext/boost/mpl/aux_/full_lambda.hpp:230:31: error: missing binary operator before token "("
In file included from ../../ext/boost/iterator/iterator_facade.hpp:34,
from ../../ext/boost/iterator/iterator_adaptor.hpp:15,
from ../../ext/boost/iterator/reverse_iterator.hpp:12,
from ../../ext/boost/range/reverse_iterator.hpp:20,
from ../../ext/boost/range/rend.hpp:19,
from ../../ext/boost/foreach.hpp:72,
from src/mysql_sql_inserts_loader.cpp:5:
../../ext/boost/mpl/apply.hpp:138:31: error: missing binary operator before token "("
make[3]: *** [mysql_sql_inserts_loader.lo] Error 1
make[3]: Leaving directory `/home/ioni/builds/community/network/mysql-workbench/src/mysql-workbench-oss-5.1.12/modules/db.mysql.sqlparser'
How to repeat:
install newer toolchain and use gcc 4.4.0 to compile it.
Suggested fix:
this is my current patch. I'm not sure if i add them in the right place but is compiling fine until the submited error.
diff -urN mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_art_resultset.cpp mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_art_resultset.cpp
--- mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_art_resultset.cpp 2009-04-23 19:00:53.000000000 +0300
+++ mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_art_resultset.cpp 2009-05-23 19:20:47.468870434 +0300
@@ -16,6 +16,7 @@
#include <cppconn/exception.h>
#include <sstream>
+#include <cstdio>
#include <math.h>
diff -urN mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_resultbind.cpp mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_resultbind.cpp
--- mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_resultbind.cpp 2009-04-23 19:00:53.000000000 +0300
+++ mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_resultbind.cpp 2009-05-23 19:26:03.928807729 +0300
@@ -14,6 +14,7 @@
#include "mysql_resultbind.h"
#include <string.h>
+#include <cstdio>
namespace sql
{
diff -urN mysql-workbench-oss-5.1.12.orig/library/canvas/src/mdc_common.h mysql-workbench-oss-5.1.12/library/canvas/src/mdc_common.h
--- mysql-workbench-oss-5.1.12.orig/library/canvas/src/mdc_common.h 2009-04-23 19:00:55.000000000 +0300
+++ mysql-workbench-oss-5.1.12/library/canvas/src/mdc_common.h 2009-05-23 19:34:07.056259058 +0300
@@ -27,6 +27,7 @@
#endif
#endif
+#include <cstdio>
#include "mdc_canvas_public.h"
diff -urN mysql-workbench-oss-5.1.12.orig/library/forms/filechooser.cpp mysql-workbench-oss-5.1.12/library/forms/filechooser.cpp
--- mysql-workbench-oss-5.1.12.orig/library/forms/filechooser.cpp 2009-04-23 19:00:55.000000000 +0300
+++ mysql-workbench-oss-5.1.12/library/forms/filechooser.cpp 2009-05-23 19:46:19.568710012 +0300
@@ -1,6 +1,8 @@
#include "stdafx.h"
+#include <cstdio>
+
#include <mforms/mforms.h>
diff -urN mysql-workbench-oss-5.1.12.orig/library/forms/mforms.cpp mysql-workbench-oss-5.1.12/library/forms/mforms.cpp
--- mysql-workbench-oss-5.1.12.orig/library/forms/mforms.cpp 2009-04-23 19:00:55.000000000 +0300
+++ mysql-workbench-oss-5.1.12/library/forms/mforms.cpp 2009-05-23 19:54:19.822012953 +0300
@@ -3,7 +3,7 @@
#include <string.h>
#include "mforms/mforms.h"
#include "mforms/simpleform.h"
-
+#include <cstdio>
using namespace mforms;
ControlFactory *ControlFactory::get_instance()
Description: I've tried to compile 5.0.12 on newer toolchain: autoconf 2.63-1 automake 1.10.2-1 bin86 0.16.17-4 bison 2.4.1-1 ed 1.2-1 fakeroot 1.12.2-2 flex 2.5.35-1 gcc 4.4.0-1 libtool 2.2.6a-1 m4 1.4.13-1 make 3.81-4 patch 2.5.9-2 pkgconfig 0.23-1 There are a bunch of errors like this one which i managed to fixed then making a patch. mysql_art_resultset.cpp:57: error: ‘snprintf’ was not declared in this scope mysql_art_resultset.cpp:63: error: ‘snprintf’ was not declared in this scope mysql_art_resultset.cpp:69: error: ‘snprintf’ was not declared in this scope mysql_art_resultset.cpp:75: error: ‘snprintf’ was not declared in this scope Those was easy to fix but now i'm stuck and i can't manage to fix it. In file included from ../../ext/boost/mpl/apply.hpp:23, from ../../ext/boost/iterator/iterator_facade.hpp:34, from ../../ext/boost/iterator/iterator_adaptor.hpp:15, from ../../ext/boost/iterator/reverse_iterator.hpp:12, from ../../ext/boost/range/reverse_iterator.hpp:20, from ../../ext/boost/range/rend.hpp:19, from ../../ext/boost/foreach.hpp:72, from src/mysql_sql_inserts_loader.cpp:5: ../../ext/boost/mpl/apply_wrap.hpp:81:31: error: missing binary operator before token "(" ../../ext/boost/mpl/apply_wrap.hpp:173:31: error: missing binary operator before token "(" In file included from ../../ext/boost/mpl/bind.hpp:27, from ../../ext/boost/mpl/lambda.hpp:18, from ../../ext/boost/mpl/apply.hpp:25, from ../../ext/boost/iterator/iterator_facade.hpp:34, from ../../ext/boost/iterator/iterator_adaptor.hpp:15, from ../../ext/boost/iterator/reverse_iterator.hpp:12, from ../../ext/boost/range/reverse_iterator.hpp:20, from ../../ext/boost/range/rend.hpp:19, from ../../ext/boost/foreach.hpp:72, from src/mysql_sql_inserts_loader.cpp:5: ../../ext/boost/mpl/apply_wrap.hpp:81:31: error: missing binary operator before token "(" ../../ext/boost/mpl/apply_wrap.hpp:173:31: error: missing binary operator before token "(" In file included from ../../ext/boost/mpl/lambda.hpp:18, from ../../ext/boost/mpl/apply.hpp:25, from ../../ext/boost/iterator/iterator_facade.hpp:34, from ../../ext/boost/iterator/iterator_adaptor.hpp:15, from ../../ext/boost/iterator/reverse_iterator.hpp:12, from ../../ext/boost/range/reverse_iterator.hpp:20, from ../../ext/boost/range/rend.hpp:19, from ../../ext/boost/foreach.hpp:72, from src/mysql_sql_inserts_loader.cpp:5: ../../ext/boost/mpl/bind.hpp:364:31: error: missing binary operator before token "(" ../../ext/boost/mpl/bind.hpp:531:31: error: missing binary operator before token "(" In file included from ../../ext/boost/mpl/lambda.hpp:22, from ../../ext/boost/mpl/apply.hpp:25, from ../../ext/boost/iterator/iterator_facade.hpp:34, from ../../ext/boost/iterator/iterator_adaptor.hpp:15, from ../../ext/boost/iterator/reverse_iterator.hpp:12, from ../../ext/boost/range/reverse_iterator.hpp:20, from ../../ext/boost/range/rend.hpp:19, from ../../ext/boost/foreach.hpp:72, from src/mysql_sql_inserts_loader.cpp:5: ../../ext/boost/mpl/aux_/full_lambda.hpp:230:31: error: missing binary operator before token "(" In file included from ../../ext/boost/iterator/iterator_facade.hpp:34, from ../../ext/boost/iterator/iterator_adaptor.hpp:15, from ../../ext/boost/iterator/reverse_iterator.hpp:12, from ../../ext/boost/range/reverse_iterator.hpp:20, from ../../ext/boost/range/rend.hpp:19, from ../../ext/boost/foreach.hpp:72, from src/mysql_sql_inserts_loader.cpp:5: ../../ext/boost/mpl/apply.hpp:138:31: error: missing binary operator before token "(" make[3]: *** [mysql_sql_inserts_loader.lo] Error 1 make[3]: Leaving directory `/home/ioni/builds/community/network/mysql-workbench/src/mysql-workbench-oss-5.1.12/modules/db.mysql.sqlparser' How to repeat: install newer toolchain and use gcc 4.4.0 to compile it. Suggested fix: this is my current patch. I'm not sure if i add them in the right place but is compiling fine until the submited error. diff -urN mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_art_resultset.cpp mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_art_resultset.cpp --- mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_art_resultset.cpp 2009-04-23 19:00:53.000000000 +0300 +++ mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_art_resultset.cpp 2009-05-23 19:20:47.468870434 +0300 @@ -16,6 +16,7 @@ #include <cppconn/exception.h> #include <sstream> +#include <cstdio> #include <math.h> diff -urN mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_resultbind.cpp mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_resultbind.cpp --- mysql-workbench-oss-5.1.12.orig/ext/cppconn/driver/mysql_resultbind.cpp 2009-04-23 19:00:53.000000000 +0300 +++ mysql-workbench-oss-5.1.12/ext/cppconn/driver/mysql_resultbind.cpp 2009-05-23 19:26:03.928807729 +0300 @@ -14,6 +14,7 @@ #include "mysql_resultbind.h" #include <string.h> +#include <cstdio> namespace sql { diff -urN mysql-workbench-oss-5.1.12.orig/library/canvas/src/mdc_common.h mysql-workbench-oss-5.1.12/library/canvas/src/mdc_common.h --- mysql-workbench-oss-5.1.12.orig/library/canvas/src/mdc_common.h 2009-04-23 19:00:55.000000000 +0300 +++ mysql-workbench-oss-5.1.12/library/canvas/src/mdc_common.h 2009-05-23 19:34:07.056259058 +0300 @@ -27,6 +27,7 @@ #endif #endif +#include <cstdio> #include "mdc_canvas_public.h" diff -urN mysql-workbench-oss-5.1.12.orig/library/forms/filechooser.cpp mysql-workbench-oss-5.1.12/library/forms/filechooser.cpp --- mysql-workbench-oss-5.1.12.orig/library/forms/filechooser.cpp 2009-04-23 19:00:55.000000000 +0300 +++ mysql-workbench-oss-5.1.12/library/forms/filechooser.cpp 2009-05-23 19:46:19.568710012 +0300 @@ -1,6 +1,8 @@ #include "stdafx.h" +#include <cstdio> + #include <mforms/mforms.h> diff -urN mysql-workbench-oss-5.1.12.orig/library/forms/mforms.cpp mysql-workbench-oss-5.1.12/library/forms/mforms.cpp --- mysql-workbench-oss-5.1.12.orig/library/forms/mforms.cpp 2009-04-23 19:00:55.000000000 +0300 +++ mysql-workbench-oss-5.1.12/library/forms/mforms.cpp 2009-05-23 19:54:19.822012953 +0300 @@ -3,7 +3,7 @@ #include <string.h> #include "mforms/mforms.h" #include "mforms/simpleform.h" - +#include <cstdio> using namespace mforms; ControlFactory *ControlFactory::get_instance()