# [gelöst] emerge scheitert bei media-libs/gexiv2

## uhai

noch eins:

```
/bin/sh ./libtool  --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DPACKAGE_NAME=\"gexiv2\" -DPACKAGE_TARNAME=\"gexiv2\" -DPACKAGE_VERSION=\"0.10.3\" -DPACKAGE_STRING=\"gexiv2\ 0.10.3\" -DPACKAGE_BUGREPORT=\"gexiv2-list@gnome.org\" -DPACKAGE_URL=\"https://wiki.gnome.org/Projects/gexiv2\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DSIZEOF_INT_P=8 -DARCH_X86=1 -DARCH_X86_64=1 -I.   -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include   -Wl,-lstdc++  -march=native -O2 -pipe -c -o gexiv2/libgexiv2_la-gexiv2-startup.lo `test -f 'gexiv2/gexiv2-startup.cpp' || echo './'`gexiv2/gexiv2-startup.cpp

In file included from gexiv2/gexiv2-stream-io.cpp:13:0:

gexiv2/gexiv2-stream-io.h:42:15: error: conflicting return type specified for 'virtual long int StreamIo::size() const'

  virtual long size () const;

               ^

In file included from gexiv2/gexiv2-stream-io.h:19:0,

                 from gexiv2/gexiv2-stream-io.cpp:13:

/usr/include/exiv2/basicio.hpp:225:24: error:   overriding 'virtual size_t Exiv2::BasicIo::size() const'

         virtual size_t size() const = 0;

                        ^

make: *** [Makefile:680: gexiv2/libgexiv2_la-gexiv2-stream-io.lo] Error 1

make: *** Waiting for unfinished jobs....

libtool: compile:  x86_64-pc-linux-gnu-g++ -DPACKAGE_NAME=\"gexiv2\" -DPACKAGE_TARNAME=\"gexiv2\" -DPACKAGE_VERSION=\"0.10.3\" "-DPACKAGE_STRING=\"gexiv2 0.10.3\"" -DPACKAGE_BUGREPORT=\"gexiv2-list@gnome.org\" -DPACKAGE_URL=\"https://wiki.gnome.org/Projects/gexiv2\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DSIZEOF_INT_P=8 -DARCH_X86=1 -DARCH_X86_64=1 -I. -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -Wl,-lstdc++ -march=native -O2 -pipe -c gexiv2/gexiv2-startup.cpp  -fPIC -DPIC -o gexiv2/.libs/libgexiv2_la-gexiv2-startup.o

In file included from gexiv2/gexiv2-metadata.cpp:13:0:

gexiv2/gexiv2-stream-io.h:42:15: error: conflicting return type specified for 'virtual long int StreamIo::size() const'

  virtual long size () const;

               ^

In file included from /usr/include/exiv2/image.hpp:31:0,

                 from gexiv2/gexiv2-metadata-private.h:14,

                 from gexiv2/gexiv2-metadata.cpp:12:

/usr/include/exiv2/basicio.hpp:225:24: error:   overriding 'virtual size_t Exiv2::BasicIo::size() const'

         virtual size_t size() const = 0;

                        ^

make: *** [Makefile:645: gexiv2/libgexiv2_l 

a-gexiv2-metadata.lo] Error 1

 * ERROR: media-libs/gexiv2-0.10.3::gentoo failed (compile phase):

 *   emake failed

```

build.log und emerge --info:

```
 emerge --info

Portage 2.3.8 (python 3.4.5-final-0, default/linux/amd64/13.0/systemd, gcc-5.4.0, glibc-2.23-r4, 4.9.34-gentoo x86_64)

=================================================================

System uname: Linux-4.9.34-gentoo-x86_64-AMD_FX-tm-8350_Eight-Core_Processor-with-gentoo-2.3

KiB Mem:    32906876 total,  26976732 free

KiB Swap:     524284 total,    524284 free

Timestamp of repository gentoo: Sat, 23 Sep 2017 06:30:01 +0000

Head commit of repository gentoo: b2e66d0594d3a89fa0b1584b2ad9038e2ce8ef5e

sh bash 4.3_p48-r1

ld GNU ld (Gentoo 2.28.1 p1.0) 2.28.1

app-shells/bash:          4.3_p48-r1::gentoo

dev-java/java-config:     2.2.0-r3::gentoo

dev-lang/perl:            5.24.1-r2::gentoo

dev-lang/python:          2.7.12::gentoo, 3.4.5::gentoo

dev-util/cmake:           3.7.2::gentoo

dev-util/pkgconfig:       0.28-r2::gentoo

sys-apps/baselayout:      2.3::gentoo

sys-apps/openrc:          0.28::gentoo

sys-apps/sandbox:         2.10-r3::gentoo

sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo

sys-devel/automake:       1.11.6-r1::gentoo, 1.15-r2::gentoo

sys-devel/binutils:       2.28.1::gentoo

sys-devel/gcc:            5.4.0-r3::gentoo

sys-devel/gcc-config:     1.7.3::gentoo

sys-devel/libtool:        2.4.6-r3::gentoo

sys-devel/make:           4.2.1::gentoo

sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers)

sys-libs/glibc:           2.23-r4::gentoo

Repositories:

gentoo

    location: /usr/portage

    sync-type: rsync

    sync-uri: rsync://rsync.gentoo.org/gentoo-portage

    priority: -1000

mein-repo

    location: /usr/local/portage

    masters: gentoo

ACCEPT_KEYWORDS="amd64"

ACCEPT_LICENSE="* -@EULA"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-march=native -O2 -pipe"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.0/ext-active/ /etc/php/cgi-php7.0/ext-active/ /etc/php/cli-php7.0/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"

DISTDIR="/usr/portage/distfiles"

FCFLAGS="-O2 -pipe"

FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"

FFLAGS="-O2 -pipe"

GENTOO_MIRRORS="ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo http://mirror.netcologne.de/gentoo/ ftp://mirror.netcologne.de/gentoo/ rsync://mirror.netcologne.de/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp.halifax.rwth-aachen.de/gentoo/ ftp://ftp.halifax.rwth-aachen.de/gentoo/ rsync://ftp.halifax.rwth-aachen.de/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo http://ftp.uni-erlangen.de/pub/mirrors/gentoo rsync://ftp-stud.hs-esslingen.de/gentoo/ http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/"

LANG="de_DE.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 --exclude=/.git"

PORTAGE_TMPDIR="/tmp"

USE="X a52 aac acl alsa amd64 berkdb bzip2 cdda cddb cdr clamav cli cracklib crypt cups cxx dga dri dts dvd dvdr exif ffmpeg flac foomaticdb fortran gdbm gif gphoto2 iconv ipv6 jbig jpeg jpeg2k lcms lensfun lisp mmx modules mp3 mp4 mpeg multilib ncurses nls nptl nvidia ogg opengl openmp pam pcre php png raw readline scanner seccomp session sse sse2 ssl svg systemd tcpd theora threads tiff truetype udev unicode v4l vcd vdpau vim-syntax webp wmf xattr xine xv xvid xvms 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" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="bindist mmx sse sse2" 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 wacom" KERNEL="linux" L10N="de" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de_DE de" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php-7" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby22" SANE_BACKENDS="hp" USERLAND="GNU" VIDEO_CARDS="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"

Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

```

uhaiLast edited by uhai on Mon Nov 13, 2017 8:40 pm; edited 1 time in total

----------

## uhai

Keiner eine Idee?

----------

## Josef.95

Hm, versuche mal bitte ob nach einem frischen "emerge --sync"

ein rebuild von media-gfx/exiv2 hilft. 

```
emerge -av1 media-gfx/exiv2 media-libs/gexiv2
```

----------

## asturm

https://gitweb.gentoo.org/repo/gentoo.git/commit/media-libs/gexiv2?id=302c4780e18256bf4a5e33f58665a7d6081f940a

----------

## uhai

Danke asturm,

ich habe mir die patches (gexiv2-0.10.3-exiv-0.26.patch, gexiv2-0.10.5-stdexcept.patch) heruntergeladen und in /etc/portage/patches/media-libs/gexiv2 eingespielt. Leider hat das emerge (emerge -av1 media-gfx/exiv2 media-libs/gexiv2 - Danke Josef.95) nicht geklappt:

```
>>> Emerging (2 of 2) media-libs/gexiv2-0.10.6::gentoo

 * gexiv2-0.10.6.tar.xz SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                                                           [ ok ]

>>> Unpacking source...

>>> Unpacking gexiv2-0.10.6.tar.xz to /tmp/portage/media-libs/gexiv2-0.10.6/work

>>> Source unpacked in /tmp/portage/media-libs/gexiv2-0.10.6/work

>>> Preparing source in /tmp/portage/media-libs/gexiv2-0.10.6/work/gexiv2-0.10.6 ...

!-!--!-!-!-!-!-!-!-!-!-!-!-

 * Applying gexiv2-0.10.3-exiv-0.26.patch ...

1 out of 1 hunk FAILED -- saving rejects to file gexiv2/gexiv2-stream-io.cpp.rej

1 out of 2 hunks FAILED -- saving rejects to file gexiv2/gexiv2-stream-io.h.rej                                                                                                        [ !! ]

 * ERROR: media-libs/gexiv2-0.10.6::gentoo failed (prepare phase):

 *   patch -p1  failed with /etc/portage/patches/media-libs/gexiv2/gexiv2-0.10.3-exiv-0.26.patch

 * 

 * Call stack:

 *               ebuild.sh, line  115:  Called src_prepare

 *             environment, line 3702:  Called default

 *      phase-functions.sh, line  808:  Called default_src_prepare

 *      phase-functions.sh, line  873:  Called __eapi6_src_prepare

 *             environment, line  249:  Called eapply_user

 *             environment, line 1060:  Called eapply '/etc/portage/patches/media-libs/gexiv2/gexiv2-0.10.3-exiv-0.26.patch'

 *             environment, line 1030:  Called _eapply_patch '/etc/portage/patches/media-libs/gexiv2/gexiv2-0.10.3-exiv-0.26.patch'

 *             environment, line  968:  Called __helpers_die 'patch -p1  failed with /etc/portage/patches/media-libs/gexiv2/gexiv2-0.10.3-exiv-0.26.patch'

 *   isolated-functions.sh, line  117:  Called die

 * The specific snippet of code:

 *              die "$@"

 * 

 * If you need support, post the output of `emerge --info '=media-libs/gexiv2-0.10.6::gentoo'`,

 * the complete build log and the output of `emerge -pqv '=media-libs/gexiv2-0.10.6::gentoo'`.

 * The complete build log is located at '/tmp/portage/media-libs/gexiv2-0.10.6/temp/build.log'.

 * The ebuild environment file is located at '/tmp/portage/media-libs/gexiv2-0.10.6/temp/environment'.

 * Working directory: '/tmp/portage/media-libs/gexiv2-0.10.6/work/gexiv2-0.10.6'

 * S: '/tmp/portage/media-libs/gexiv2-0.10.6/work/gexiv2-0.10.6'

>>> Failed to emerge media-libs/gexiv2-0.10.6, Log file:

>>>  '/tmp/portage/media-libs/gexiv2-0.10.6/temp/build.log'
```

Liegt das eventuell an der Version, die ich hier einspielen will? Oder habe ich das patchen falsch gemacht? Ich habe mich an http://www.gentooforum.de/artikel/16303/wie-man-einen-patch-einspielt.html gehalten.

uhai

----------

## Josef.95

Uhai,

Patches einspielen sollte nicht notwendig sein - das ganze ist schon fix und fertig im Tree vorhanden.

Lass die Patches weg, dann sollten sich beide Versionen (gexiv2-0.10.3 oder auch 0.10.6) problemlos bauen lassen.

----------

## asturm

emerge --sync, as said.

----------

## uhai

ok , so hats geklappt.

Ich lasse hier immer eix-sync laufen. Das macht wohl icht das gleiche wie emerge --sync, oder?

Danke für die Hilfe.

uhai

btw: neulich habe ich gelesen, dass die Gentoo-Community so unfreundlich wäre. Kann ich gar nicht nachvollziehen. Eigentlich eine fRechheit, so etwas zu behaupten.

----------

## Josef.95

Na prima :)

 *uhai wrote:*   

> Ich lasse hier immer eix-sync laufen. Das macht wohl icht das gleiche wie emerge --sync, oder? 

  eix-sync ruft per default (sofern nicht anders konfiguriert) auch nur "emerge --sync" auf, und danach ein eix-update, und bietet dazu noch ein gut übersichtliches eix-diff

Sollte also normal fein funktionieren.

Beispiel-Ausgabe: 

```
# eix-sync 

 * Running emerge --sync

>>> Syncing repository 'gentoo' into '/usr/portage'...

[...]
```

----------

