Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 692462

Summary: dev-libs/redland-1.0.17-r2 fails to build with >=dev-db/mysql-connector-c-8: rdf_storage_mysql.c:450:5: error: unknown type name 'my_bool'
Product: Gentoo Linux Reporter: Leonid Kopylov <leonchik1976>
Component: Current packagesAssignee: Gentoo Sound Team <sound>
Status: RESOLVED FIXED    
Severity: normal CC: andy.dalton, atoth, b.buschinski, chris.murtagh1, conardcox, dschridde+gentoobugs, eXt, fkrogh, frederik.schmid, gentoo, gentoo, gentoobugs, gerrshapovalov, holbugs, joerg.schaible, johannes.hirte, jstein, kroemmelbein, M4rkusXXL, maracay, mark+gentoobugs, moltonel, news, pascal.rebreyend, phils, scott, spikyatlinux, steven, tb, thomas.bettler, zeekec
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: All   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 692570    
Attachments: build.log
patch to fix my_bool error
fix to the suggested patch - should change my_bool to bool, not char
redland-1.0.17-r2 patches to fix my_bool declaration (type no longer exists)
net-snmp-5.8-r3 build log

Description Leonid Kopylov 2019-08-18 17:43:12 UTC
after emerge --sync, system tried to re-emerge this

# emerge -pqv '=dev-libs/redland-1.0.17-r2::gentoo'
[ebuild   R   ] dev-libs/redland-1.0.17-r2  USE="berkdb mysql postgres sqlite -iodbc -odbc -static-libs"

# emerge --info '=dev-libs/redland-1.0.17-r2::gentoo'
Portage 2.3.71 (python 3.6.9-final-0, default/linux/amd64/17.1/desktop/gnome/systemd, gcc-9.2.0, glibc-2.29-r4, 5.2.9-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.2.9-gentoo-x86_64-Intel-R-_Core-TM-_i7-6700_CPU_@_3.40GHz-with-gentoo-2.6
KiB Mem:    18492736 total,   4798680 free
KiB Swap:    8388604 total,   8388604 free
Timestamp of repository gentoo: Sun, 18 Aug 2019 17:00:01 +0000
Head commit of repository gentoo: b804ce6614dc477be29de20e4d27f54413e21fe1
sh bash 5.0_p9
ld GNU ld (Gentoo 2.32 p2) 2.32.0
ccache version 3.7.3 [disabled]
app-shells/bash:          5.0_p9::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.30.0::gentoo
dev-lang/python:          2.7.16::gentoo, 3.6.9::gentoo, 3.7.4-r1::gentoo
dev-util/ccache:          3.7.3::gentoo
dev-util/cmake:           3.15.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/sandbox:         2.18::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.32-r1::gentoo
sys-devel/gcc:            9.2.0::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r5::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 5.2::gentoo (virtual/os-headers)
sys-libs/glibc:           2.29-r4::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-max-age: 24
    sync-rsync-extra-opts:

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

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

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

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

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE myspell-ru_RU-AlexanderLebedev linux-fw-redistributable no-source-code CC-BY-ND-3.0 dropbox bh-luxi google-chrome OPERA-2014 TeamViewer Sublime all-rights-reserved EULA YDSLA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
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-php7.3/ext-active/ /etc/php/cgi-php7.3/ext-active/ /etc/php/cli-php7.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
GENTOO_MIRRORS="http://mirror.isoc.org.il/pub/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
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 --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac accessibility acl acpi alsa amd64 audit berkdb bluetooth branding bzip2 cairo cdda cdr cgroup-hybrid cli colord crypt cryptsetup cups curl cxx dbus device-mapper doc dos dot dri dts dvd dvdr eds emboss encode evo examples exif experimental fam flac fontconfig fortran gconf gd gdbm geoip gif glamor gles gnome gnome-keyring gnome-online-accounts go googledrive gpg gpm gstreamer gtk haptic html http iconv icu idn introspection ipv6 iscsi jadetex java jpeg kerberos latex lcms ldap libkms libnotify libsecret libtirpc libuv logrotate mad mariadb math mbox mdadm minizip mng mount mp3 mp4 mpeg mpx multilib multimon mysql mysqli nautilus ncurses networkmanager nls nptl nscd offensive ogg opengl openmp openntpd pam pango pcre pcre32 pdf pdfimport perl png policykit postgres postproc ppds pulseaudio python qrcode qt5 readline samba sasl sdl seccomp secure-delete slp smi spell split-usr sqlite sshdump ssl startup-notification svg symlink sync-plugin-portage systemd tcpd tfshark threads tiff tk tools tracker truetype udev udisks unicode upower usb user-session vim-syntax vlc vorbis wayland winbind wininst wxwidgets x264 xa xattr xcb xinerama xkb xml xv xvfb xvid zlib" ABI_X86="64 32" 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="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev" KERNEL="linux" L10N="en en-US he ru" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="nlpsolver scripting-beanshell wiki-publisher scripting-javascript" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby24 ruby25 ruby26" USERLAND="GNU" VIDEO_CARDS="vmware" 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:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-libs/redland-1.0.17-r2::gentoo was built with the following:
USE="berkdb mysql postgres sqlite -iodbc -odbc -static-libs" ABI_X86="(64)"
Comment 1 Leonid Kopylov 2019-08-18 17:44:05 UTC
Created attachment 587364 [details]
build.log
Comment 2 Fabio Coatti 2019-08-18 17:46:57 UTC
Same problem here.
Could it be related to mysql connector or to gcc 9.2?
Comment 3 SpikyAtLinux 2019-08-19 10:17:00 UTC
I´m using mariadb.

I copied dev-libs/redland-1.0.17-r2 to my local overlay, and changed  

mysql? ( dev-db/mysql-connector-c:0= )

to

mysql? ( dev-db/mariadb-connector-c:0= )

after that it builds fine.
Comment 4 Johannes Hirte 2019-08-19 12:46:12 UTC
(In reply to Fabio Coatti from comment #2)
> Same problem here.
> Could it be related to mysql connector or to gcc 9.2?

The log is not really readable, but I'd bet it's this error:

/bin/sh ../libtool  --tag=CC   --mode=compile x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I.  -I/usr/include/mysql  -I/usr/include/db6.0 -I/usr/include/db6.0 -I/usr/include/raptor2 -I/usr/include/rasqal -I/usr/include/raptor2  -DREDLAND_MODULE_PATH="\""/usr/local/lib/redland:/usr/lib64/redland"\"" -DLIBRDF_INTERNAL=1 -O2 -march=bdver4 -msahf -mpopcnt -mlzcnt --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=1024 -mtune=bdver4 -ftree-vectorize -fvect-cost-model -pipe -c -o librdf_storage_mysql_la-rdf_storage_mysql.lo `test -f 'rdf_storage_mysql.c' || echo './'`rdf_storage_mysql.c
libtool: compile:  x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/usr/include/mysql -I/usr/include/db6.0 -I/usr/include/db6.0 -I/usr/include/raptor2 -I/usr/include/rasqal -I/usr/include/raptor2 -DREDLAND_MODULE_PATH=\"/usr/local/lib/redland:/usr/lib64/redland\" -DLIBRDF_INTERNAL=1 -O2 -march=bdver4 -msahf -mpopcnt -mlzcnt --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=1024 -mtune=bdver4 -ftree-vectorize -fvect-cost-model -pipe -c rdf_storage_mysql.c  -fPIC -DPIC -o .libs/librdf_storage_mysql_la-rdf_storage_mysql.o
rdf_storage_mysql.c: In function 'librdf_storage_mysql_get_handle':
rdf_storage_mysql.c:450:5: error: unknown type name 'my_bool'; did you mean 'bool'?
  450 |     my_bool value=(context->reconnect) ? 1 : 0;
      |     ^~~~~~~
      |     bool
make[3]: *** [Makefile:886: librdf_storage_mysql_la-rdf_storage_mysql.lo] Error 1
make[3]: Leaving directory '/var/tmp/portage/dev-libs/redland-1.0.17-r2/work/redland-1.0.17/src'
make[2]: *** [Makefile:978: all-recursive] Error 1
make[2]: Leaving directory '/var/tmp/portage/dev-libs/redland-1.0.17-r2/work/redland-1.0.17/src'
make[1]: *** [Makefile:667: all] Error 2
make[1]: Leaving directory '/var/tmp/portage/dev-libs/redland-1.0.17-r2/work/redland-1.0.17/src'
make: *** [Makefile:624: all-recursive] Error 1


So it's related to dev-db/mysql-connector-c-8.0.17-r1
Comment 5 Richard Cox 2019-08-19 13:35:00 UTC
(In reply to SpikyAtLinux from comment #3)
> I´m using mariadb.
> 
> I copied dev-libs/redland-1.0.17-r2 to my local overlay, and changed  
> 
> mysql? ( dev-db/mysql-connector-c:0= )
> 
> to
> 
> mysql? ( dev-db/mariadb-connector-c:0= )
> 
> after that it builds fine.

I tried that and it didn't work for me.  I still got the same error.
Comment 6 daniel 2019-08-19 15:34:49 UTC
Same here. 
And changing dependency from mysql-connector-c to mariadb-connector-c didn't work for me either.
Comment 7 SpikyAtLinux 2019-08-19 16:52:09 UTC
Created attachment 587428 [details, diff]
patch to fix my_bool error

Perhaps you can try this patch, its my 1st one, builds successfully on my system.

Copy patch to /etc/portage/patches/dev-libs/redland.

Regards
Comment 8 daniel 2019-08-19 17:00:51 UTC
Thanks, patch works fine for me.
Comment 9 SpikyAtLinux 2019-08-19 17:08:22 UTC
(In reply to daniel from comment #8)
> Thanks, patch works fine for me.

Fine, thanks for feedback ;-)
Comment 10 Guy 2019-08-20 13:25:39 UTC
Same problem - suggested patch did _NOT_ work for me.

With this latest round of 'emerge @world' updates on a different machine, I'm having a different 'mysql' problem which may be related: bug# 692610

The error there is:
/usr/include/mysql/mysql_com.h:1005:10: fatal error: mysql/udf_registration_types.h: No such file or directory
Comment 11 Attila Tóth 2019-08-21 05:56:09 UTC
Patch works for me, thanks!
Comment 12 Fabio Coatti 2019-08-21 07:54:50 UTC
Also here the patch seems ok, thanks!
Comment 13 Ivo Steinmann 2019-08-23 12:01:08 UTC
The patch substitutes my_bool to char, but it should be substituted to bool or maybe int.
Comment 14 Leonid Kopylov 2019-08-24 07:47:12 UTC
Patch works for me too!
Comment 15 Guy 2019-08-25 09:10:50 UTC
(In reply to Guy from comment #10)
> Same problem - suggested patch did _NOT_ work for me.
> 
> With this latest round of 'emerge @world' updates on a different machine,
> I'm having a different 'mysql' problem which may be related: bug# 692610
> 
> The error there is:
> /usr/include/mysql/mysql_com.h:1005:10: fatal error:
> mysql/udf_registration_types.h: No such file or directory

I was not clear here. I attempted and failed the approach suggested in comment #3. The timing was such that I tried this before comment #7 appeared.

The patch suggested in comment #7 does work for me.
Comment 16 George Shapovalov 2019-09-16 08:37:33 UTC
Created attachment 589972 [details, diff]
fix to the suggested patch - should change my_bool to bool, not char

I confirm the problem and the patch working 
*with the following change*: 
char -> bool
(as it should be, and is even suggested by the compiler)
Comment 17 noldor 2019-10-11 13:33:32 UTC
I can confirm the problem and the patch.
Works. Thanks.
Comment 18 Dennis Schridde 2019-10-19 20:10:14 UTC
I created a PR for upstream: https://github.com/dajobe/librdf/pull/14
Comment 19 Joerg Schaible 2020-02-16 16:47:10 UTC
mysql-connector-c:8 went stable now and redland still does not compile
Comment 20 Phil Stracchino (Unix Ronin) 2020-02-16 18:44:54 UTC
Same here.  I have a verified working updated patch (attaching in a moment):
Comment 21 Phil Stracchino (Unix Ronin) 2020-02-16 18:48:44 UTC
Created attachment 614052 [details]
redland-1.0.17-r2 patches to fix my_bool declaration (type no longer exists)

Uncompressed tar file containing patches for redland-1.0.17-r2.ebuild and redland-1.0.17/src/rdf_storage_mysql.c
Comment 22 Bodo Graumann 2020-02-17 05:56:05 UTC
With mysql-connector-c-8.0.19 gone stable this will become a real problem!
I would suggest increasing the priority of this bug.

Unfortunately afaics the patch can not be readily used, because it will break the build of redmine with mysql-connector-c-6 installed.
Comment 23 Andreas Thalhammer 2020-02-19 20:03:40 UTC
A temporary fix, which may work for you, is to disable USE=mysql. See https://forums.gentoo.org/viewtopic-p-8422134.html#8420920
Comment 24 Scott Alfter 2020-02-19 21:17:34 UTC
I just tested this again, and redland 1.0.17-r2 successfully builds against mysql-connector-c 8.0.19.  Perhaps something's changed in mysql-connector-c recently.
Comment 25 Larry the Git Cow gentoo-dev 2020-02-20 15:53:34 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ab8c1f0f18b08e0d9a3cdcf99b08bf962a1a81f

commit 4ab8c1f0f18b08e0d9a3cdcf99b08bf962a1a81f
Author:     David Seifert <soap@gentoo.org>
AuthorDate: 2020-02-20 15:53:18 +0000
Commit:     David Seifert <soap@gentoo.org>
CommitDate: 2020-02-20 15:53:18 +0000

    dev-libs/redland: Fix building against mysql 8
    
    Closes: https://bugs.gentoo.org/692462
    Package-Manager: Portage-2.3.89, Repoman-2.3.20
    Acked-by: Andreas K. Hüttel <dilfridge@gentoo.org>
    Signed-off-by: David Seifert <soap@gentoo.org>

 .../redland/files/redland-1.0.17-mysql-8-my_bool.patch    | 15 +++++++++++++++
 dev-libs/redland/redland-1.0.17-r2.ebuild                 |  2 ++
 2 files changed, 17 insertions(+)
Comment 26 VSC55 2020-02-21 17:02:55 UTC
Hi,

The same thing happens to me with "dev-libs/redland" and after the patch it has been fixed.
But it turns out that with "net-analyzer/net-snmp-5.8-r3" the same error occurs "unknown type name 'my_bool'."

....
/bin/sh ../../libtool  --mode=compile x86_64-pc-linux-gnu-gcc -I../../include  -I/usr/include/libnl3  -march=haswell -O2 -pipe -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -march=haswell -O2 -pipe -Ulinux -Dlinux=linux  -fwrapv -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib64/perl5/5.30.1/x86_64-linux/CORE   -c -o inet6.lo inet6.c
snmptrapd_sql.c:202:8: error: unknown type name 'my_bool'
  202 | static my_bool    _no_v3;
      |        ^~~~~~~
snmptrapd_sql.c: In function 'netsnmp_mysql_init':
snmptrapd_sql.c:455:5: warning: implicit declaration of function 'my_load_defaults' [-Wimplicit-function-declaration]
  455 |     my_load_defaults ("my", _sql.groups, &not_argc, &not_argv, 0);
      |     ^~~~~~~~~~~~~~~~
snmptrapd_sql.c:532:50: warning: assignment to '_Bool *' from incompatible pointer type 'int *' [-Wincompatible-pointer-types]
  532 |         _tbind[TBIND_v3_SECURITY_ENGINE].is_null = &_no_v3;
      |                                                  ^
make[1]: *** [Makefile:100: snmptrapd_sql.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
....
Comment 27 VSC55 2020-02-21 17:05:29 UTC
Created attachment 614830 [details]
net-snmp-5.8-r3 build log
Comment 28 Bodo Graumann 2020-02-21 17:28:45 UTC
@VSC55: Please see this bug report: https://bugs.gentoo.org/show_bug.cgi?id=692478
For more instances the tracker is here: https://bugs.gentoo.org/709620