Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 556586 - >=dev-db/mysql-workbench-6.3.3 fails to build
Summary: >=dev-db/mysql-workbench-6.3.3 fails to build
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal with 1 vote (vote)
Assignee: Hans de Graaff
URL:
Whiteboard:
Keywords:
: 567242 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-08-03 15:28 UTC by Josh Holmer
Modified: 2019-04-21 08:34 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
MYSQL Server generated /usr/include/x86_64-pc-linux-gnu/mysql/my_config.h (mysql-5.6.24-config,16.40 KB, text/plain)
2015-08-18 17:38 UTC, H.Habighorst
Details
MySQL Connector C generated /usr/include/x86_64-pc-linux-gnu/mysql/my_config.h (mysql-connector-c-config,10.70 KB, text/plain)
2015-08-18 17:43 UTC, H.Habighorst
Details
Build log (build.log.gz,36.11 KB, application/gzip)
2015-08-28 15:18 UTC, Josh Holmer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Josh Holmer 2015-08-03 15:28:34 UTC
MySQL Workbench 6.3.3 and 6.3.4 both fail to build with the same errors.

Relevant portion of build log below:

[ 71%] Building CXX object library/sql.parser/source/CMakeFiles/sqlparser.dir/charset-def.cpp.o
cd /var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-6.3.3_build/library/sql.parser/source && /usr/bin/x86_64-pc-linux-gnu-g++  -DHAVE_PRCTL_H -DMYSQLCPPCONN_VERSION_1_1_4 -DMYSQLCPPCONN_VERSION_1_1_5 -D__STDC_FORMAT_MACROS -Dsqlparser_EXPORTS  -DNDEBUG -O2 -pipe -march=native  -fPIC -I/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/plugins/migration/copytable -I/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-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/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/. -I/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/../include -I/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/modules/db.mysql.sqlparser/src -I/usr/include/mysql -I/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./linux    -o CMakeFiles/sqlparser.dir/charset-def.cpp.o -c /var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/charset-def.cpp
In file included from /var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/mysys_priv.h:17:0,
                 from /var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/charset-def.cpp:17:
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_global.h:643:9: error: ‘SOCKET_SIZE_TYPE’ does not name a type
 typedef SOCKET_SIZE_TYPE size_socket;
         ^
In file included from /var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/mysys_priv.h:17:0,
                 from /var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/charset-def.cpp:17:
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_global.h:609:21: error: ‘RETSIGTYPE’ has not been declared
 #define sig_handler RETSIGTYPE
                     ^
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_sys.h:686:50: note: in expansion of macro ‘sig_handler’
 extern void my_remember_signal(int signal_number,sig_handler (*func)(int));
                                                  ^
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_global.h:609:21: error: ‘RETSIGTYPE’ does not name a type
 #define sig_handler RETSIGTYPE
                     ^
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_sys.h:727:8: note: in expansion of macro ‘sig_handler’
 extern sig_handler sigtstp_handler(int signal_number);
        ^
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_global.h:609:21: error: ‘RETSIGTYPE’ does not name a type
 #define sig_handler RETSIGTYPE
                     ^
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_sys.h:730:8: note: in expansion of macro ‘sig_handler’
 extern sig_handler my_set_alarm_variable(int signo);
        ^
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_global.h:635:17: error: ‘RETQSORTTYPE’ does not name a type
 #define qsort_t RETQSORTTYPE /* Broken GCC cant handle typedef !!!! */
                 ^
/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-community-6.3.3-src/library/sql.parser/source/./my_sys.h:734:8: note: in expansion of macro ‘qsort_t’
 extern qsort_t qsort2(void *base_ptr, size_t total_elems, size_t size,
        ^
library/sql.parser/source/CMakeFiles/sqlparser.dir/build.make:62: recipe for target 'library/sql.parser/source/CMakeFiles/sqlparser.dir/charset-def.cpp.o' failed
make[2]: *** [library/sql.parser/source/CMakeFiles/sqlparser.dir/charset-def.cpp.o] Error 1
make[2]: Leaving directory '/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-6.3.3_build'
CMakeFiles/Makefile2:1656: recipe for target 'library/sql.parser/source/CMakeFiles/sqlparser.dir/all' failed
make[1]: *** [library/sql.parser/source/CMakeFiles/sqlparser.dir/all] Error 2
make[1]: Leaving directory '/var/tmp/portage/dev-db/mysql-workbench-6.3.3/work/mysql-workbench-6.3.3_build'
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
 * ERROR: dev-db/mysql-workbench-6.3.3::gentoo failed (compile phase):
 *   emake failed


Reproducible: Always




emerge --info:

Portage 2.2.20 (python 3.4.3-final-0, default/linux/amd64/13.0/systemd, gcc-4.9.3, glibc-2.21-r1, 4.1.3-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.1.3-gentoo-x86_64-Intel-R-_Core-TM-_i7-4770HQ_CPU_@_2.20GHz-with-gentoo-2.2
KiB Mem:    16340224 total,   5495332 free
KiB Swap:    2047996 total,   2047996 free
Timestamp of repository gentoo: Mon, 03 Aug 2015 12:00:01 +0000
sh bash 4.3_p39
ld GNU ld (Gentoo 2.25.1 p1.0) 2.25.1
app-shells/bash:          4.3_p39::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.22.0::gentoo
dev-lang/python:          2.7.10::gentoo, 3.4.3::gentoo
dev-util/cmake:           3.3.0::gentoo
dev-util/pkgconfig:       0.28-r3::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r1::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1::gentoo
sys-devel/gcc:            4.9.3::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6-r1::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.21-r1::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

drdim
    location: /var/lib/layman/drdim
    sync-type: laymansync
    sync-uri: https://github.com/drdim/layman.git
    masters: gentoo
    priority: 50

sublime-text
    location: /var/lib/layman/sublime-text
    sync-type: laymansync
    sync-uri: git://github.com/DamnWidget/sublime-text.git
    masters: gentoo
    priority: 50

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=native"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="X acl acpi alsa amd64 berkdb bluetooth branding bzip2 cjk cli colord corefonts cracklib crypt cups cxx dbus dri ffmpeg flac fortran gdbm gif iconv icu ipv6 ithreads jemalloc jpeg json libnotify lock mmx mmxext modules multilib ncurses networkmanager nls nptl nsplugin opengl openmp optimization pam pcre pdf png policykit pulseaudio readline session sqlite sse sse2 ssl startup-notification strong-optimization symlink systemd tcpd threads thunar truetype udev udisks unicode usb vim-syntax wifi zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev synaptics keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="intel i915" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Brian Evans (RETIRED) gentoo-dev 2015-08-03 17:56:21 UTC
What are the installed versions and USE flags of virtual/mysql, virtual/libmysqlclient, dev-db/mysql, dev-db/mariadb, dev-db/percona-server, dev-db/mysql-connector-c, dev-db/mariadb-galera and/or dev-db/mysql-cluster?
(Omit any that do not exist on the machine)
Comment 2 Brian Evans (RETIRED) gentoo-dev 2015-08-03 17:57:22 UTC
Also, please attach the full build.log file to this bug
Comment 3 Josh Holmer 2015-08-03 18:17:08 UTC
virtual/libmysqlclient-18
virtual/mysql-5.6-r6
dev-db/mariadb-10.0.20-r1
dev-db/mysql-connector-c-6.1.6

I can't attach the build.log as it exceeds the 1000 kb limit.
Comment 4 Brian Evans (RETIRED) gentoo-dev 2015-08-03 18:33:52 UTC
(In reply to Josh Holmer from comment #3)
> I can't attach the build.log as it exceeds the 1000 kb limit.

Compress it with bzip2 or xz first then
Comment 5 Josh Holmer 2015-08-03 20:00:31 UTC
(In reply to Brian Evans from comment #4)
> (In reply to Josh Holmer from comment #3)
> > I can't attach the build.log as it exceeds the 1000 kb limit.
> 
> Compress it with bzip2 or xz first then

Never mind, I tried that just now but it still fails. In Chrome I get an E_ACCESS_DENIED error. In Firefox I click the Submit button and nothing appears to happen at all.
Comment 6 Hans de Graaff gentoo-dev Security 2015-08-04 05:07:19 UTC
I would suspect this is related to using gcc 4.9. I have not tested that myself yet.
Comment 7 Tom-Steve Watzke 2015-08-05 11:38:47 UTC
I have the same issue.
I am using gcc 4.9.x since 01/2015 and built mysql-workbench many times before. 
Thus it is a current bug elsewhere.

Linux oriongl64 4.1.0-gentoo #1 SMP Tue Jun 23 11:40:48 CEST 2015 x86_64 Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz GenuineIntel GNU/Linux
Comment 8 Josh Holmer 2015-08-06 14:12:58 UTC
(In reply to Tom-Steve Watzke from comment #7)
> I have the same issue.
> I am using gcc 4.9.x since 01/2015 and built mysql-workbench many times
> before. 
> Thus it is a current bug elsewhere.
> 
> Linux oriongl64 4.1.0-gentoo #1 SMP Tue Jun 23 11:40:48 CEST 2015 x86_64
> Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz GenuineIntel GNU/Linux

Which mysql server and client versions are you building against?
Comment 9 Tom-Steve Watzke 2015-08-06 14:26:18 UTC
Here are my "mysql versions":


$ equery -Cq l $(qlist -IC mysql)

dev-db/mysql-5.6.26-r1
dev-db/mysql-connector-c++-1.1.6
dev-db/mysql-connector-c-6.1.6
dev-db/mysql-init-scripts-2.1_alpha4
dev-db/mysql-workbench-6.3.4
dev-perl/DBD-mysql-4.31.0
virtual/libmysqlclient-18
virtual/mysql-5.6-r6
Comment 10 H.Habighorst 2015-08-15 12:20:20 UTC
I've hit the same error.

The socket defines should come from the MYSQL server package... As Gentoo recently switched to

virtual/libmysqlclient
dev-db/mysql-connector-c

I tried to downgrade my mysql version before this change.

# forcefully nuke it...
emerge -C virtual/libmysqlclient dev-db/mysql-connector-c

# need the older virtual otherwise we pull in dev-db/mysql-connector-c again
emerge -av1 =dev-db/mysql-5.6.24 =virtual/mysql-5.6-r2

As the mysql-connector-c++ linkage to libmysqlclient broke, I needed to recompile mysql-connector-c++.

emerge -1 mysql-connector-c++

Compiling went fine then.

So the bug seems to be hidden somewhere in the linkage or inclusion of headers from mysql package due to split in mysql-connector-c.
Comment 11 Tom-Steve Watzke 2015-08-17 09:09:35 UTC
(In reply to h.habighorst from comment #10)
> I've hit the same error.
> 
> The socket defines should come from the MYSQL server package... As Gentoo
> recently switched to
> 
> virtual/libmysqlclient
> dev-db/mysql-connector-c
> 
> I tried to downgrade my mysql version before this change.
> 
> # forcefully nuke it...
> emerge -C virtual/libmysqlclient dev-db/mysql-connector-c
> 
> # need the older virtual otherwise we pull in dev-db/mysql-connector-c again
> emerge -av1 =dev-db/mysql-5.6.24 =virtual/mysql-5.6-r2
> 
> As the mysql-connector-c++ linkage to libmysqlclient broke, I needed to
> recompile mysql-connector-c++.
> 
> emerge -1 mysql-connector-c++
> 
> Compiling went fine then.
> 
> So the bug seems to be hidden somewhere in the linkage or inclusion of
> headers from mysql package due to split in mysql-connector-c.

CONFIRMED: Built without errors using this downgrade.
Comment 12 H.Habighorst 2015-08-18 15:33:36 UTC
I've had a bit more time today...

Following the "trail", I noticed the following:

uriel mysql # find /usr/include/mysql -type f -exec grep -Hi 'SOCKET_SIZE_TYPE' {} \;
./my_global.h:typedef socket_len_t SOCKET_SIZE_TYPE; /* Used by NDB */

So definition should come out of this package.

The include path gets correctly set and used in my case (Variable MYSQL_INCLUDE_DIRS ).

However: my_global.h does not get included. It seems that the inclusion of my_global.h always leads to inclusion of

mysql-workbench-community-6.3.4-src/library/sql.parser/source/my_global.h

As my_global.h in mysql-connector-c has MY_GLOBAL_INCLUDED defined, use explicitly that and refer to it explicitly in the mysql workbench source code.

Added to the beginning of the following file:

mysql-workbench-community-6.3.4-src/library/sql.parser/source/my_global.h:

#ifndef MY_GLOBAL_INCLUDED
#include <mysql/my_global.h>
#endif

This fixed compilation for me.

Anyone knows maybe a nicer way?
Comment 13 H.Habighorst 2015-08-18 17:07:08 UTC
Narf. Confused myself brilliantly. Pain killer kills brain.

The direction was right, the path was wrong.

It's not an inclusion problem, but it seems as if some automagic disappeared somewhere... 

I knew I have had seen the mentioned variables somewhere but was unable to remember where.

https://github.com/MariaDB/mariadb-connector-c/blob/master/cmake/CheckTypes.cmake

Found them.

So I think the problem is rather simple - CMake doesn't pick up some configuration definitions from the mysql package anymore. And as such, the types are not defined anymore and it fails.
Comment 14 Brian Evans (RETIRED) gentoo-dev 2015-08-18 17:09:45 UTC
(In reply to h.habighorst from comment #13)
> Narf. Confused myself brilliantly. Pain killer kills brain.
> 
> The direction was right, the path was wrong.
> 
> It's not an inclusion problem, but it seems as if some automagic disappeared
> somewhere... 
> 
> I knew I have had seen the mentioned variables somewhere but was unable to
> remember where.
> 
> https://github.com/MariaDB/mariadb-connector-c/blob/master/cmake/CheckTypes.
> cmake
> 
> Found them.
> 
> So I think the problem is rather simple - CMake doesn't pick up some
> configuration definitions from the mysql package anymore. And as such, the
> types are not defined anymore and it fails.

MariaDB's Connector-C is not in portage.  So unless you grabbed it from the mysql overlay, *and* enabled mysqlcompat (not recommended), this is a red herring.
Comment 15 H.Habighorst 2015-08-18 17:37:28 UTC
Nope. It should have been only an hint so that maybe someone else could pick up where I left.

But the hint was correct.

When installing mysql-5.6.24, the configure system checks for several more options and creates as such another /usr/include/x86_64-pc-linux-gnu/mysql/my_config.h as mysql-connector-c .

The question is - how should this be handled? Is mysql-workbench the only package that relies on defines from my_config.h that are specific for mysql-server?
Comment 16 H.Habighorst 2015-08-18 17:38:41 UTC
Created attachment 409374 [details]
MYSQL Server generated /usr/include/x86_64-pc-linux-gnu/mysql/my_config.h
Comment 17 H.Habighorst 2015-08-18 17:43:43 UTC
Created attachment 409382 [details]
MySQL Connector C generated /usr/include/x86_64-pc-linux-gnu/mysql/my_config.h

For example, the following defines are missing and seem to be crucial for mysql-workbench build:

#define HAVE_MEMMOVE 1
...
#define QSORT_TYPE_IS_VOID 1
#define RETQSORTTYPE void

#define SIGNAL_RETURN_TYPE_IS_VOID 1
#define RETSIGTYPE void
#define VOID_SIGHANDLER 1
#define STRUCT_RLIMIT struct rlimit
...
Comment 18 Josh Holmer 2015-08-28 15:18:57 UTC
Created attachment 410528 [details]
Build log
Comment 19 Lord_Evil 2015-08-31 03:28:55 UTC
Hmm.. I have 6.3.3 built, but no go for 6.3.4
Any info I can gather to help resolve this?
Comment 20 Lord_Evil 2015-08-31 11:53:57 UTC
Seems like USE flag "client-libs" adds missing defines to /usr/include/mysql/my_global.h but it conflicts with dev-db/mysql-connector-c whereas dev-db/mysql-connector-c++, it's binding, I believe, is a explicit dependency of the mysql-workbench.
Comment 21 Tomáš Mózes 2015-12-02 08:46:07 UTC
*** Bug 567242 has been marked as a duplicate of this bug. ***
Comment 22 Jouni Kosonen 2015-12-22 06:48:48 UTC
Found in the news change log:

>    The client-libs USE flag turned out to be a failure and is being removed.
>    There is nothing much for the user to be concerned with with that removal.

So, this can be resolved by upgrading to a version of mysql/mariadb/percona/galera/whatever that doesn't have the client-libs USE flag and rebuilding dev-db/mysql-connector-c++ against that. Then, dev-db/mysql-workbench should build successfully.
Comment 23 Hans de Graaff gentoo-dev Security 2015-12-27 10:16:38 UTC
@grknight: should mysql-workbench block on dev-db/msyql-connector-c ?
Comment 24 Oleh 2016-03-03 07:30:11 UTC
is this ever going fixed in forseeable future?
Comment 25 John Westermann 2018-11-12 08:04:12 UTC
I still get this error and cannot compile mysql-workbench. I tried the whole weekend to fiddle with versions of mariadb, mysql, gcc etc.

I also did emerge -e @system and world and recompiled everything, according to https://wiki.gentoo.org/wiki/Upgrading_GCC

The original solution (mentioned in comment #10) does not work anymore, because it was dated from 2015 and such versions are masked meanwhile.

I even tried mysql-workbench version 8 (devel) but it is far from bug free right now, so no real option.

I tried to compile with this gcc's
[IP-] [  ] sys-devel/gcc-6.4.0-r1:6.4.0
[IP-] [  ] sys-devel/gcc-7.3.0-r3:7.3.0

[IP-] [  ] dev-db/mysql-5.6.40-r2:0/18
and with dev-db/mariadb:-10.0.35-r2 dev-db/mariadb:-10.1.34

All versions I have tried are currently marked as stable. Can someone please give me an idea. I cannot think of one anymore. The biggest problem with this, it always stops at 71% of compile process. That means, it takes about 3-4h before I know if it fails. That doesn't encourage to fiddle directly with the source code.
Comment 26 Alexander Puchmayr 2018-11-24 12:48:12 UTC
I just emerged version 6.3.10 successfully. If you can live with a keyworded version, I think its worth a try.
Comment 27 Hans de Graaff gentoo-dev Security 2019-04-21 08:34:48 UTC
Closing since 6.3.10 is now the oldest, stable, version.