Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 753173 - dev-cpp/libodb-2.5.0_beta19: compile failed due to many header/type issues (gcc 10)
Summary: dev-cpp/libodb-2.5.0_beta19: compile failed due to many header/type issues (g...
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal major (vote)
Assignee: Mark Wright
Whiteboard: ~arch only
Depends on:
Blocks: gcc-10
  Show dependency tree
Reported: 2020-11-05 08:49 UTC by Tom-Steve Watzke
Modified: 2021-01-01 15:26 UTC (History)
2 users (show)

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

build.log (build.log.gz,362.77 KB, application/gzip)
2020-11-05 08:51 UTC, Tom-Steve Watzke
environment (environment,56.69 KB, text/plain)
2020-11-05 08:51 UTC, Tom-Steve Watzke
build log using LANG_C (build.log.gz,356.15 KB, application/gzip)
2020-11-06 08:07 UTC, Tom-Steve Watzke

Note You need to log in before you can comment on or make changes to this bug.
Description Tom-Steve Watzke 2020-11-05 08:49:40 UTC
I am trying to install linphone-desktop from the nest layman overlay.
Therefore it is required to install libodb from the gentoo portage,
but it doesn't get compiled due to many gcc issues about wrong types.
The gcc used to compile was either 9.3.0 or 10.2.0.

Is there anyone able to compile it? 
More details are as followed.

Reproducible: Always

Steps to Reproduce:
1. emerge libodb
Actual Results:  
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/cstdlib:248:22: Fehler: »atoll« wurde nicht innerhalb von »__gnu_cxx« deklariert
  248 |   using ::__gnu_cxx::atoll;
      |                      ^~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/cstdlib:249:22: Fehler: »strtof« wurde nicht innerhalb von »__gnu_cxx« deklariert
  249 |   using ::__gnu_cxx::strtof;
      |                      ^~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/cstdlib:250:22: Fehler: »strtoll« wurde nicht innerhalb von »__gnu_cxx« deklariert
  250 |   using ::__gnu_cxx::strtoll;
      |                      ^~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/cstdlib:251:22: Fehler: »strtoull« wurde nicht innerhalb von »__gnu_cxx« deklariert
  251 |   using ::__gnu_cxx::strtoull;
      |                      ^~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/cstdlib:252:22: Fehler: »strtold« wurde nicht innerhalb von »__gnu_cxx« deklariert
  252 |   using ::__gnu_cxx::strtold;
      |                      ^~~~~~~
In Datei, eingebunden von /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/bits/algorithmfwd.h:39,
                 von /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/bits/stl_algo.h:60,
                 von /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/vector:62,
                 von /var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/work/libodb-2.5.0-b.19/odb/transaction.hxx:9,
                 von /var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/work/libodb-2.5.0-b.19/odb/transaction.cxx:4:
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/initializer_list:53:15: Fehler: »size_t« bezeichnet keinen Typ
   53 |       typedef size_t   size_type;
      |               ^~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/initializer_list:34:1: Anmerkung: »size_t« is defined in header »<cstddef>«; did you forget to »#include <cstddef>«?
   33 | #pragma GCC system_header
  +++ |+#include <cstddef>
   34 | 
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/initializer_list:59:7: Fehler: »size_type« bezeichnet keinen Typ
   59 |       size_type   _M_len;
      |       ^~~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/initializer_list:62:54: Fehler: »size_type« wurde nicht deklariert
   62 |       constexpr initializer_list(const_iterator __a, size_type __l)
      |                                                      ^~~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/initializer_list:70:17: Fehler: »size_type« bezeichnet keinen Typ
   70 |       constexpr size_type
      |                 ^~~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/g++-v10/initializer_list:47:11: schwerwiegender Fehler: Definition von »class std::initializer_list<_E>« entspricht nicht »#include <initializer_list>«
   47 |     class initializer_list
      |           ^~~~~~~~~~~~~~~~
Kompilierung beendet.
info: failed to update (for install) /var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/work/dir{libodb-2.5.0-b.19/}
info: failed to update (for install) /var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/work/dir{libodb-2.5.0-b.19/}
 * ERROR: dev-cpp/libodb-2.5.0_beta19::gentoo failed (compile phase):
 *   /var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/work/build2-toolchain-0.13.0/build2/build2/b-boot update-for-install --jobs 4 --verbose 3 failed
 * Call stack:
 *, line  125:  Called src_compile
 *   environment, line 1174:  Called b 'update-for-install'
 *   environment, line  398:  Called die
 * The specific snippet of code:
 *       "${@}" || die "${@} failed"
 * If you need support, post the output of `emerge --info '=dev-cpp/libodb-2.5.0_beta19::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-cpp/libodb-2.5.0_beta19::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/work/libodb-2.5.0-b.19'
 * S: '/var/tmp/portage/dev-cpp/libodb-2.5.0_beta19/work/libodb-2.5.0-b.19'

Expected Results:  
no compile errors

# emerge --info '=dev-cpp/libodb-2.5.0_beta19::gentoo'
Portage 3.0.9 (python 3.7.9-final-0, default/linux/amd64/17.0/desktop/gnome/systemd, gcc-10.2.0, glibc-2.32-r2, 5.9.1-gentoo x86_64)
                         System Settings
System uname: Linux-5.9.1-gentoo-x86_64-Intel-R-_Core-TM-_i7-2600K_CPU_@_3.40GHz-with-gentoo-2.7
KiB Mem:    16400788 total,   3619184 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Thu, 05 Nov 2020 07:30:01 +0000
Head commit of repository gentoo: 46cb2f7ab90df65ad668a79727a788956462d68d
Head commit of repository gnome: 5a14af6a5d61814664deb9606d26046ade9c770d

Head commit of repository java: fa5711b35fdd36112cadee95cbb5a56cfa492dcc

Head commit of repository mv: 9b2577e6749d7e25c4129ebfef42b7fe1d861809

Head commit of repository steam-overlay: d7c5c8993a92a0c0aa7e3ecc2b0adfd28b11c6f2

Head commit of repository x11: afbaafaa912dc09a19fee7ee28ef94c44a134a06

sh bash 5.0_p18
ld GNU ld (Gentoo 2.35.1 p1) 2.35.1
ccache version 4.0 [enabled]
app-shells/bash:          5.0_p18::gentoo
dev-java/java-config:     2.3.1::gentoo
dev-lang/perl:            5.30.3-r2::gentoo
dev-lang/python:          3.7.9::gentoo, 3.8.6::gentoo, 3.9.0::gentoo, 3.10.0_alpha1::gentoo
dev-util/ccache:          4.0::gentoo
dev-util/cmake:           3.18.4::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.7::gentoo
sys-apps/sandbox:         2.20::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r5::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.12.6-r2::gentoo, 1.13.4-r2::gentoo, 1.16.2::gentoo
sys-devel/binutils:       2.35.1::gentoo
sys-devel/gcc:            9.3.0-r2::gentoo, 10.2.0-r3::gentoo
sys-devel/gcc-config:     2.3.2::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.9::gentoo (virtual/os-headers)
sys-libs/glibc:           2.32-r2::gentoo

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

    location: /usr/local/portage
    masters: gentoo
    priority: 0

    location: /var/lib/layman/gnome
    sync-type: git
    masters: gentoo
    priority: 50

    location: /var/lib/layman/java
    sync-type: git
    masters: gentoo
    priority: 50

    location: /var/lib/layman/mv
    sync-type: git
    masters: gentoo
    priority: 50

    location: /var/lib/layman/nest
    sync-type: laymansync
    masters: gentoo
    priority: 50

    location: /var/lib/layman/steam-overlay
    sync-type: git
    masters: gentoo
    priority: 50

    location: /var/lib/layman/x11
    sync-type: git
    sync-uri: git://
    masters: gentoo
    priority: 50

ACCEPT_KEYWORDS="amd64 ~amd64 ~x86"
ACCEPT_LICENSE="@FREE no-source-code linux-fw-redistributable MPEG-4 unRAR intel-ucode NVIDIA-r2 MSttfEULA bakoma Skype-TOS Nero-EULA-US dlj-1.1 sun-bcla-java-vm skype-google* AdobeFlash-11.x PUEL skype-* TeamViewer Oracle-BCLA-JavaSE google-chrome yEd CC-Sampling-Plus-1.0 NPSL"
CFLAGS="-march=sandybridge -O2 -pipe"
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.4/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cli-php7.4/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=sandybridge -O2 -pipe"
EMERGE_DEFAULT_OPTS="--with-bdeps=y --quiet-build=n --verbose-conflicts --backtrack=100 --autounmask-keep-masks=y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs candy ccache config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de en"
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"
USE="64bit X a52 aac aalib acl acpi addc alsa amd64 ansi anthy ao apache2 apm artworkextra asf audacious avx bash-completion bluetooth branding bzip2 cairo cdda cddax cddb cdparanoia cdr chm cli colord cpudetection crypt cups curl d3d9 data dbus dga djvu dri dts dv dvd dvdr dvi dxr3-audio-denoise ecl eds emboss encode esd evo exif fam fame fat fbcon fbcondecor fftw firefox firefox3 flac flash fortran fping ftp gdbm gdu gedit ggi gif git gles1 gmp gnome gnome-keyring gnome-online-accounts gnome-print gnomecanvas gnomecd gnomedb gnutls google gpac gpg gpm gs gsl gstreamer gtk gtk3 gui h224 h281 h323 handbook hddtemp hdri http2 httpd iconv icu id3tag imagemagick int64 introspection ipv6 java java6 javamail javascript jbig jce john jpeg jpgraph kpathsea ladspa lame lapack lcms libglvnd libnotify libsamplerate libsecret libtirpc libvisual libwww live lm_sensors lzo mad matroska md5sum mdnsresponder-compat mikmod mmx mmxext mng mp3 mp4 mpeg mplayer mpx multilib musepack nano-syntax nautilus ncurses netlink networking networkmanager nfs nfsv41 nls nptl nptlonly nsplugin nvidia odbc ogg openal opengl openmax openmp pam pango pari pcre pdf perl php plotutils png pnm policykit ppds pppd print pulseaudio python qt5 quicktime rar readline reflection reiserfs rtc samba sdl seccomp semantic-desktop sensord session sftp sndfile speex spell spl split-usr sql sqlite3 sse sse2 sse3 sse4a sse5 ssh ssl ssse3 startup-notification stream subversion svg systemd t1lib tcl tcpd tga theora threads thumbnail tiff truetype udev udisks unicode upower usb vaapi vdpau vorbis weather webkit wmf wxwidgets x264 xa xattr xcb xinerama xinetd xml xmlrpc xorg xulrunner xv xvfb xvid xvmc zlib" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="hda-intel" APACHE2_MODULES="access_compat actions alias authn_core authz_core auth_basic auth_digest authn_alias authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info lbmethod_byrequests log_config log_forensic logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif slotmem_shm so socache_shmcb speling status unique_id unixd userdir usertrack vhost_alias" APACHE2_MPMS="prefork" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev libinput" KERNEL="linux" L10N="de en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_7" PYTHON_TARGETS="python3_7" RUBY_TARGETS="ruby26" SANE_BACKENDS="net" USERLAND="GNU" VIDEO_CARDS="nouveau nvidia" 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"
Comment 1 Tom-Steve Watzke 2020-11-05 08:51:19 UTC
Created attachment 670061 [details]
Comment 2 Tom-Steve Watzke 2020-11-05 08:51:34 UTC
Created attachment 670064 [details]
Comment 3 Tom-Steve Watzke 2020-11-05 08:59:56 UTC
The dependencies are as follows. When trying to emerge linphone-desktop,
the following packages are required:

# emerge -av linphone-desktop

These are the packages that would be merged, in order:

Calculating dependencies ... done!                                 
[ebuild  N     ] dev-cpp/libodb-2.5.0_beta19::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-qt/qtquickcontrols-5.15.1:5/5.15::gentoo  USE="widgets -debug -test" 0 KiB
[ebuild  N     ] dev-cpp/libodb-sqlite-2.5.0_beta19::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-util/build2-0.13.0::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-cpp/libcutl-1.11.0_beta6::nest  USE="-static-libs" 0 KiB
[ebuild  N     ] dev-cpp/libxsd-frontend-2.0.0_p20170103::nest  0 KiB
[ebuild  N     ] dev-util/cli-1.2.0_pre20190704::nest  USE="static-libs" 0 KiB
[ebuild  N     ] dev-cpp/xsd-4.0.0::nest  USE="zlib -doc -examples -test" 0 KiB
[ebuild  N     ] dev-libs/liblinphone-4.4.0::nest  USE="libnotify static-libs -debug -doc -ldap -test -tools" PYTHON_TARGETS="python3_7 -python3_6 -python3_8" 0 KiB
[ebuild  N     ] net-voip/linphone-desktop-4.2.1::nest  0 KiB

Further checkes showed, that the following packages depend on each other:

- "net-voip/linphone-desktop" depends on "dev-libs/liblinphone"
- "dev-libs/liblinphone" depends on "~dev-cpp/xsd-4.0.0"
- "~dev-cpp/xsd-4.0.0" depends on "dev-util/cli-1.2.0_pre20190704"
- "dev-util/cli-1.2.0_pre20190704" depends on "dev-util/build2"
- "dev-util/build2" depends on "~dev-cpp/libodb-2.5.0_beta19" 
    and "~dev-cpp/libodb-sqlite-2.5.0_beta19"
Comment 4 Jonas Stein gentoo-dev 2020-11-05 16:52:07 UTC
Please use LANG=C next time for the logs/reports.
I am not sure, if this is also related to #705764.

See also the upstream mailinglist
Comment 5 Tom-Steve Watzke 2020-11-06 08:07:10 UTC
Created attachment 670133 [details]
build log using LANG_C

Here is the build.log using LANG=C and LC_ALL=C
Comment 6 Tom-Steve Watzke 2020-11-09 15:20:27 UTC
(In reply to Jonas Stein from comment #4)
> Please use LANG=C next time for the logs/reports.
> I am not sure, if this is also related to #705764.
> See also the upstream mailinglist 

It also can't be built with GCC 9.4.
Furthermore it can't be related to the mentioned upstream mailing list entry,
because there it is about libodb version 2.4.

So in portage we have a beta of version 2.5:
Why isn't there the stable version 2.4 included in portage ?
Comment 7 Tom-Steve Watzke 2020-11-17 09:37:59 UTC
I found the issue. It's not about libodb, but ccache.
I noticed the issue by reading the build log/output, 
looks like the compiling has issues with ccache.

Thus the following emerge command works:

FEATURES=-ccache emerge libodb