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

Bug 626176

Summary: net-libs/opal-3.10.11-r1 fails to build
Product: Gentoo Linux Reporter: Steve Arnold <nerdboy>
Component: Current packagesAssignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed>
Status: RESOLVED FIXED    
Severity: major CC: jstein, treecleaner
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Steve Arnold archtester gentoo-dev 2017-07-25 21:59:05 UTC
Current setup:

$ emerge --info
Portage 2.3.6 (python 3.4.6-final-0, default/linux/amd64/13.0/desktop, gcc-6.3.0, glibc-2.24-r3, 4.3.0-gentoo x86_64)
=================================================================
System uname: Linux-4.3.0-gentoo-x86_64-AMD_Athlon-tm-_II_X4_640_Processor-with-gentoo-2.4.1
KiB Mem:     4046248 total,    819912 free
KiB Swap:    8388604 total,   7375624 free
Timestamp of repository gentoo: Sat, 22 Jul 2017 10:30:01 +0000
sh bash 4.3_p48-r1
ld GNU ld (Gentoo 2.27 p1.0) 2.27
distcc 3.2rc1 x86_64-pc-linux-gnu [disabled]
ccache version 3.3.4 [enabled]
app-shells/bash:          4.3_p48-r1::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.24.2::gentoo
dev-lang/python:          2.7.13::gentoo, 3.4.6::gentoo, 3.5.2::gentoo
dev-util/ccache:          3.3.4::gentoo
dev-util/cmake:           3.9.0::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1::gentoo
sys-apps/openrc:          0.28::gentoo
sys-apps/sandbox:         2.10-r4::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r3::gentoo
sys-devel/automake:       1.9.6-r4::gentoo, 1.10.3-r1::gentoo, 1.11.6-r2::gentoo, 1.12.6-r1::gentoo, 1.13.4-r1::gentoo, 1.14.1-r1::gentoo, 1.15.1::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo, 2.26.1::gentoo, 2.27::gentoo, 2.28-r2::nerdboy
sys-devel/gcc:            4.9.3::gentoo, 5.3.0::arm_support, 5.4.0::gentoo, 6.3.0::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r4::gentoo
sys-devel/make:           4.2.1-r1::gentoo
sys-kernel/linux-headers: 4.10::gentoo (virtual/os-headers)
sys-libs/glibc:           2.24-r3::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-umask: 022
    sync-uri: rsync://go.away.now/gentoo-portage
    sync-user: portage:portage
    priority: -1000
    eclass-overrides: nerdboy

arm_support
    location: /usr/local/arm
    sync-type: git
    sync-umask: 022
    sync-uri: https://github.com/gentoo/arm.git
    sync-user: portage:portage
    masters: gentoo

nerdboy
    location: /usr/local/portage
    sync-type: git
    sync-umask: 022
    sync-uri: https://github.com/sarnold/portage-overlay.git
    sync-user: portage:portage
    masters: gentoo

jorgicio
    location: /var/lib/layman/jorgicio
    sync-type: laymansync
    sync-umask: 022
    sync-uri: https://github.com/jorgicio/jorgicio-gentoo.git
    sync-user: portage:portage
    masters: gentoo
    priority: 50

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA @GPL-COMPATIBLE @OSI-APPROVED @EULA dlj-1.1 skype-eula googleearth AdobeFlash-10.1"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -mtune=amdfam10 -O2 -pipe -flto=4 -ftree-vectorize -ftree-loop-distribution -fvect-cost-model=cheap -floop-interchange -floop-strip-mine -floop-block"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.1/conf /usr/share/maven-bin-3.2/conf /usr/share/maven-bin-3.3/conf /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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=athlon64 -mtune=amdfam10 -O2 -pipe -flto=4 -ftree-vectorize -ftree-loop-distribution -fvect-cost-model=cheap -floop-interchange -floop-strip-mine -floop-block"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms sign strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://wimpy.arnolds.bogus/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-flto=4 -fuse-linker-plugin"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_BZIP2_COMMAND="/bin/bzip2"
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="7zip X Xaw3d a52 aac aalib abiword accessibility acl acpi ada alsa ambiance amd64 amr amrnb ansi ao artworkextra aspell avahi avi berkdb bitmap-fonts bluetooth bluray branding browserplugin bzip2 bzlib cairo caps cdda cddb cdparanoia cdr cli consolekit corefonts cracklib crypt css cups curl cvs cxx daap dbus dga divx4linux djvu dnotify dri drm dts dv dvd dvdr dvdread dynagraph eds egl emboss emf enchant encode evo exif faac faad fam fame fbcon fftw firefox3 fits flac fluidsynth fontconfig fortran freetype freetype2 g3dvl gb gbm gd gdbm geos gif gimp git glamor glib glx gmp gnome-keyring gnome-online-accounts gnutls go gphoto2 gpm gps graphite graphviz grass gs gsm gstreamer gtk gtk3 gtkhtml gtkspell guile howl iconv icq id3 id3tag ifp imagemagick imap imlib inotify ios ipod ipv6 jabber jack jasper java jbig jikes jpeg jpeg2k jpg json junit ladspa lame lapack lash latex lcms ldap libav libnotify libsamplerate libsecret lm_sensors logrotate lto lua lzma mad midi mjpeg mng modules motif mp3 mp4 mpeg mplayer mtp multilib mythtv nas nautilus ncurses netcdf networking networkmanager nfs nls nolvmstatic normalize notification nptl nptlonly nsplugin numeric objc ogdi ogg oggvorbis opencl opengl openmp oss pam pango pcre pcsc-lite pda pdf perl phonon pic pkcs11 plotutils png policykit postgres ppds pulseaudio python qml qt5 quicktime r600-llvm-compiler rdp readline real replaygain rtc ruby samba sasl sdl seamonkey seccomp session shorten slp sndfile snmp sox spamassassin speex spell spice sqlite ssh ssl startup-notification subtitles subversion svg system-cairo system-harfbuzz system-icu system-jpeg system-libvpx system-sqlite taglib tcl tcpd theora threads tiff timidity tk tls truetype truetype-fonts type1-fonts udev udisks unicode upower usb v4l v4l2 vaapi vala vcd vdpau vim vorbis vpx wav wavpack wayland webkit webp weston wheel wifi wmf wxwidgets x264 xanim xattr xcb xcomposite xext xine xinerama xml xmp xorg xpm xrandr xscreensaver xv xvid xvmc zeitgeist zeo zeroconf zip zlib zvbi" ABI_X86="64 32" ALSA_CARDS="emu10k1 hda-intel usb-audio" APACHE2_MODULES="actions alias auth_digest auth_basic authn_alias access_compat authn_core authn_dbd authz_core cache_disk cern_meta cgi cgid charset_lite authn_anon 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 deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_connect proxy_http rewrite setenvif speling status unique_id userdir usertrack vhost_alias unixd socache_shmcb" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="adc65 agfa_cl20 aox ax203 barbie canon casio_qv clicksmart310 digigr8 digita dimagev dimera3500 directory enigma13 fuji gsmart300 hp215 iclick jamcam jd11 jl2005a jl2005c kodak_dc120 kodak_dc210 kodak_dc240 kodak_dc3200 kodak_ez200 konica konica_qm150 largan lg_gsm mars mustek panasonic_coolshot panasonic_l859 panasonic_dc1000 panasonic_dc1580 pccam300 pccam600 pentax polaroid_pdc320 polaroid_pdc640 polaroid_pdc700 ptp2 ricoh ricoh_g3 samsung sierra sipix_blink2 sipix_web2 smal sonix sony_dscf1 sony_dscf55 soundvision spca50x sq905 st2205 stv0674 stv0680 sx330z toshiba_pdrm11 topfield tp6801" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="aivdm ashtech earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 navcom ntrip oceanserver oncore rtcm104v2 rtcm104v3 sirf superstar2 tnt tripmate tsip ublox nmea nmea0183 nmea2000 passthrough" GRUB_PLATFORMS="efi-32 efi-64 pc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" L10N="en_US en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-minimizer wiki-publisher" LINGUAS="en_US en" LLVM_TARGETS="AMDGPU BPF NVPTX X86 AArch64 ARM Hexagon MSP430 Mips PowerPC Sparc SystemZ XCore Lanai RISCV" NETBEANS_MODULES="apisupport java javafx profiler websvccommon cnd dlight ergonomics groovy mobility webcommon" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="aarch64 arm i386 mips mipsel mips64 mips64el ppc ppc64 x86_64" QEMU_USER_TARGETS="aarch64 arm i386 mips mipsel mips64 mips64el ppc ppc64 x86_64" RUBY_TARGETS="ruby24 ruby23 ruby22" SANE_BACKENDS="net" USERLAND="GNU" VIDEO_CARDS="radeon r600" 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, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Steve Arnold archtester gentoo-dev 2017-07-25 22:01:52 UTC
There are too many warnings, not sure why i fixed this one:

--- plugins/video/common/platform.h.orig	2017-07-25 14:34:52.641104250 -0700
+++ plugins/video/common/platform.h	2017-07-25 14:35:31.048983136 -0700
@@ -36,7 +36,9 @@
 #ifndef __PLATFORM_H__
 #define __PLATFORM_H__ 1
 
+#ifndef __STDC_CONSTANT_MACROS
 #define __STDC_CONSTANT_MACROS 1
+#endif
 
 #if defined (_MSC_VER)
   #define _CRT_NONSTDC_NO_DEPRECATE 1


but the key is adding another append-cxxflags to set a newer standard than default so it will at least compile (append-cxxflags "-std=gnu++11" worked for me).
Comment 2 Jonas Stein gentoo-dev 2017-07-25 23:21:56 UTC
Thank you for the report and the analysis.
Do you want to maintain or fix this package?
The easiest could be a bump. Upstream seems still alive:
https://sourceforge.net/p/opalvoip/opal/ci/master/tree/

If no one wants to care about this package soon, I suggest to tree clean it.
Comment 3 Steve Arnold archtester gentoo-dev 2017-07-26 01:43:25 UTC
The current version still has problems (so I'm still fiddling to see if there's an easy-ish fix) but I think some video stuff still depends on it.  I may have some other "fixes" and upgrades for linphone deps, but I haven't played with that lately. I'll try the newer upstream and see what that does...
Comment 4 Steve Arnold archtester gentoo-dev 2017-07-26 03:44:53 UTC
Looks like upstream is up to 3.16.2 and 2.16.2 for opal/ptlib "stable" releases, but apparently I have no idea what stable even means, since the code is still wonky even after a couple of small patches.  And this is one of those C++ source trees that just gives me a headache...

So if there really isn't anything that depends on these libs in the tree anymore then nuking them seems like a good idea.  If anybody complains then hopefully they are up on their C++ syntax and standards-conformance.
Comment 5 Pacho Ramos gentoo-dev 2017-07-26 07:46:21 UTC
We cannot bump it since the *only* dep that uses this lib (ekiga) needs this version... and since Ekiga looks to delay its bumping forever... we are forced to use this (as all the other distributions).
Comment 6 Pacho Ramos gentoo-dev 2017-07-26 07:50:10 UTC
Please provide the build.log. I see other distributions (like Arch) are passing -fpermissive probably to workaround this issues
Comment 7 Steve Arnold archtester gentoo-dev 2017-08-31 02:51:53 UTC
-fpermissive is a pretty harsh/risky workaround; maybe there's a less bad option?
Comment 8 Steve Arnold archtester gentoo-dev 2017-08-31 06:16:33 UTC
Hmm, now it doesn't build at all; I also had to roll back to the older ptlib (which actually does build).  If I switch back to gcc 5.4 and set linker to bfd I can whittle it down to (possibly) 1 ambiguous name error, but it still fails even with -fpermissive:

[CC] src/rtp/jitter.cxx
[CC] src/rtp/rtp.cxx
[CC] src/rtp/metrics.cxx
/var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/src/opal/transcoders.cxx: In member function ‘void OpalTranscoder::NotifyCommand(const OpalMediaCommand&) const’:
/var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/src/opal/transcoders.cxx:115:77: warning: suggest braces around empty body in an ‘else’ statement [-Wempty-body]
     PTRACE(4, "Opal\tNo command notifier available for transcoder " << this);
                                                                             ^
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algobase.h:64:0,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/char_traits.h:39,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/string:40,
                 from /usr/include/ptlib/object.h:57,
                 from /usr/include/ptlib/psync.h:43,
                 from /usr/include/ptlib/critsec.h:34,
                 from /usr/include/ptlib/contain.h:42,
                 from /usr/include/ptlib.h:56,
                 from /var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/src/opal/transcoders.cxx:31:
/usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_pair.h: In instantiation of ‘constexpr std::pair<_T1, _T2>::pair(_U1&&, _U2&&) [with _U1 = const OpalMediaFormat&; _U2 = const OpalMediaFormat&; <template-parameter-2-3> = void; _T1 = PString; _T2 = PString]’:
/var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/src/opal/transcoders.cxx:189:110:   required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_pair.h:145:64: error: call of overloaded ‘PString(const OpalMediaFormat&)’ is ambiguous
  : first(std::forward<_U1>(__x)), second(std::forward<_U2>(__y)) { }
                                                                ^
In file included from /usr/include/ptlib/contain.h:624:0,
                 from /usr/include/ptlib.h:56,
                 from /var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/src/opal/transcoders.cxx:31:
/usr/include/ptlib/pstring.h:145:5: note: candidate: PString::PString(const char*)
     PString(
     ^
/usr/include/ptlib/pstring.h:127:13: note: candidate: PString::PString(const PString&)
     PINLINE PString(
             ^
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algobase.h:64:0,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/char_traits.h:39,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/string:40,
                 from /usr/include/ptlib/object.h:57,
                 from /usr/include/ptlib/psync.h:43,
                 from /usr/include/ptlib/critsec.h:34,
                 from /usr/include/ptlib/contain.h:42,
                 from /usr/include/ptlib.h:56,
                 from /var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/src/opal/transcoders.cxx:31:
/usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_pair.h:145:64: error: call of overloaded ‘PString(const OpalMediaFormat&)’ is ambiguous
  : first(std::forward<_U1>(__x)), second(std::forward<_U2>(__y)) { }
                                                                ^
In file included from /usr/include/ptlib/contain.h:624:0,
                 from /usr/include/ptlib.h:56,
                 from /var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/src/opal/transcoders.cxx:31:
/usr/include/ptlib/pstring.h:145:5: note: candidate: PString::PString(const char*)
     PString(
     ^
/usr/include/ptlib/pstring.h:127:13: note: candidate: PString::PString(const PString&)
     PINLINE PString(
             ^
make[1]: *** [Makefile:534: /var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11/lib_linux_x86_64/obj/transcoders.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11'
make: *** [Makefile:729: opt] Error 2
 * ERROR: net-libs/opal-3.10.11-r1::nerdboy failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=net-libs/opal-3.10.11-r1::nerdboy'`,
 * the complete build log and the output of `emerge -pqv '=net-libs/opal-3.10.11-r1::nerdboy'`.
 * The complete build log is located at '/var/log/portage/net-libs:opal-3.10.11-r1:20170831-061041.log'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/net-libs/opal-3.10.11-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-libs/opal-3.10.11-r1/temp/environment'.
 * Working directory: '/var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11'
 * S: '/var/tmp/portage/net-libs/opal-3.10.11-r1/work/opal-3.10.11'
!!! When you file a bug report, please include the following information:
GENTOO_VM=oracle-jdk-bin-1.7  CLASSPATH="" JAVA_HOME="/opt/oracle-jdk-bin-1.7.0.80"
JAVACFLAGS="-source 1.4 -target 1.4" COMPILER=""
and of course, the output of emerge --info =opal-3.10.11

I took a look at ubuntu's versions, and they're using the same ptlib version and opal 3.10.10 instead of 3.10.11 (plus their own patches).  I'm out of time for a while, so have at it...
Comment 9 Pacho Ramos gentoo-dev 2017-11-09 16:34:58 UTC
Do you know if Ekiga is still having so many users? We are carrying opal and ptlib simply for it... all of them are maintainer-needed for years, also ekiga had some pending bugs and relies on other obsolete stuff. Maybe it is time to treeclean the tree. 

If some year Ekiga 5 is released and someone want to put it in the tree, nice, but for now... it seems that release is never arriving :/
Comment 10 Steve Arnold archtester gentoo-dev 2017-11-13 06:13:01 UTC
I'd be happy with linphone, which seems more active, yet has its own metric load of dependencies (hopefully not as bad as ekiga).
Comment 11 Pacho Ramos gentoo-dev 2017-11-13 07:52:36 UTC
Maybe you can try to ping bircoph as it seems linphone also needs important work :(
https://bugs.gentoo.org/buglist.cgi?quicksearch=linphone&list_id=3728576
Comment 12 Mikle Kolyada (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2018-01-26 22:59:50 UTC
Gone