After updating to gcc-4.1.0 and glibc-2.4, pstoedit-3.42 build fails with the following error: x86_64-pc-linux-gnu-g++ -DPACKAGE_NAME=\"pstoedit\" -DPACKAGE_TARNAME=\"pstoedit\" -DPACKAGE_VERSION=\"3.42\" "-DPACKAGE_STRING=\"pstoedit 3.42\"" -DPACKAGE_BUGREPORT=\"wglunz34_AT_pstoedit.net\" -DPACKAGE=\"pstoedit\" -DVERSION=\"3.42\" -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 -DHAVE_DIRENT_H=1 -I. -I. -I/usr/include/libEMF -DHAVE_LIBEMF -DHAVE_LIBPNG -DDEFAULTGS=/usr/bin/gs -DPSTOEDITDATADIR=\"/usr/share/pstoedit\" -DPSTOEDITLIBDIR=\"/usr/lib64/pstoedit\" -DBUGGYGPP -Wall -Wwrite-strings -Wcast-qual -Wpointer-arith -g -MT drvwmf.lo -MD -MP -MF .deps/drvwmf.Tpo -c drvwmf.cpp -fPIC -DPIC -o .libs/drvwmf.o /usr/include/libEMF/wine/winbase.h: In function 'void* InterlockedCompareExchangePointer(void**, void*, void*)': /usr/include/libEMF/wine/winbase.h:1808: error: cast from 'void*' to 'LONG' loses precision /usr/include/libEMF/wine/winbase.h:1808: error: cast from 'void*' to 'LONG' loses precision /usr/include/libEMF/wine/winbase.h: In function 'void* InterlockedExchangePointer(void**, void*)': /usr/include/libEMF/wine/winbase.h:1813: error: cast from 'void*' to 'LONG' loses precision drvbase.h: At global scope: drvbase.h:698: warning: 'class basedrawingelement' has virtual functions but non-virtual destructor make[1]: *** [drvwmf.lo] Error 1 make[1]: Leaving directory `/var/tmp/portage/pstoedit-3.42/work/pstoedit-3.42/src' make: *** [all-recursive] Error 1 !!! ERROR: media-gfx/pstoedit-3.42 failed. Portage 2.1_pre6 (default-linux/amd64/2006.0, gcc-3.4.5, glibc-2.4-r0, 2.6.15-ck5 x86_64) ================================================================= System uname: 2.6.15-ck5 x86_64 AMD Athlon(tm) 64 Processor 3000+ Gentoo Base System version 1.12.0_pre16 ccache version 2.4 [enabled] dev-lang/python: 2.3.5-r2, 2.4.2-r1 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1-r1, 2.16.91.0.3, 2.16.91.0.5, 2.16.91.0.6 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=athlon64 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/lib64/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-march=athlon64 -O2 -pipe -ffriend-injection" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="" FEATURES="autoconfig ccache distlocks metadata-transfer nostrip sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.osuosl.org/" LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/bmg-main /usr/local/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="amd64 X aac alsa avi bash-completion berkdb bitmap-fonts bzip2 cairo cdr crypt cups dbus debug dri dvd dvdr eds emboss encode esd firefox flac foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 hal imlib ipv6 java jpeg kde ldap lzw lzw-tiff mad mono mozilla mp3 mpeg ncurses nls nptl nptlonly ogg opengl pam pdflib perl pic png python qt quicktime readline ruby samba sdl spell sqlite ssl tcpd theora tiff truetype truetype-fonts type1-fonts usb vorbis xml2 xpm xv zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_evdev kernel_linux userland_GNU video_cards_vga video_cards_vesa video_cards_nv" Unset: ASFLAGS, CTARGET, LDFLAGS, LINGUAS, MAKEOPTS
As far as I can tell this is a bug in media-libs/libemf which is the package that installs usr/include/libEMF/wine/winbase.h
Any input from phosphan?
(In reply to comment #2) > Any input from phosphan? This problem was reported in http://bugs.gentoo.org/show_bug.cgi?id=107440#c1 See line 1805 of winbase.h provided by libEMF: /* FIXME: should handle platforms where sizeof(void*) != sizeof(long) */ I just checked the sources of wine-0.9.11 and it looks like this problem was fixed. Would be nice if someone with x86_64 could see if it works if you just replace the old WINE includes with newer ones.
Oh, adding amd64 to Cc: - perhaps one of you can try what I said in comment #3?
*** This bug has been marked as a duplicate of 107440 ***