Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 226495 - app-emulation/virtualbox-1.6.2 wants new useflag for GCC-4.3.1
Summary: app-emulation/virtualbox-1.6.2 wants new useflag for GCC-4.3.1
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Markus Ullmann (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-06-14 08:51 UTC by Kamen Dokov
Modified: 2008-10-14 23:38 UTC (History)
10 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kamen Dokov 2008-06-14 08:51:33 UTC
Checking for gcc:
  ** There are known problems with gcc version 4.3 when compiling the recompiler
  ** stuff. You need to specify a compatibility compiler with version < 4.3. Look
  ** for a package compat-gcc-34 on Fedora systems or something similar on other
  ** distributions and call configure with parameter --with-gcc-compat=gcc34.


Reproducible: Always

Steps to Reproduce:
1.emerge virtualbox
2.everytime
3.

Actual Results:  
emerge virtualbox
Calculating dependencies... done!
>>> Verifying ebuild Manifests...

>>> Emerging (1 of 1) app-emulation/virtualbox-1.6.2 to /
 * VirtualBox-1.6.2-OSE.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                                                      [ ok ]
 * checking ebuild checksums ;-) ...                                                                                                                 [ ok ]
 * checking auxfile checksums ;-) ...                                                                                                                [ ok ]
 * checking miscfile checksums ;-) ...                                                                                                               [ ok ]
 * checking VirtualBox-1.6.2-OSE.tar.bz2 ;-) ...                                                                                                     [ ok ]
 * Your CXXFLAGS contains "-fvisibility-inlines-hidden" which can break packages.
 *
 * Before you file a bug, please remove these flags and
 * re-compile the package in question as well as all its dependencies
>>> Unpacking source...
>>> Unpacking VirtualBox-1.6.2-OSE.tar.bz2 to /var/tmp/portage/app-emulation/virtualbox-1.6.2/work
 * Applying virtualbox-1.6.2-remove-unused.patch ...                                                                                                 [ ok ]
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/app-emulation/virtualbox-1.6.2/work/VirtualBox-1.6.2 ...
Checking for environment: Determined build machine: linux.amd64, target machine: linux.amd64, OK.
Checking for kBuild: found, OK.
Checking for gcc:
  ** There are known problems with gcc version 4.3 when compiling the recompiler
  ** stuff. You need to specify a compatibility compiler with version < 4.3. Look
  ** for a package compat-gcc-34 on Fedora systems or something similar on other
  ** distributions and call configure with parameter --with-gcc-compat=gcc34.
 *
 * ERROR: app-emulation/virtualbox-1.6.2 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2806:  Called die
 * The specific snippet of code:
 *       ./configure ${myconf} || die "configure failed";
 *  The die message:
 *   configure failed
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/app-emulation/virtualbox-1.6.2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-emulation/virtualbox-1.6.2/temp/environment'.


Expected Results:  
to build smoothly

emerge --info 
Portage 2.1.5.5 (default-linux/amd64/2007.0/desktop, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.25-zen2-zen2 x86_64)
=================================================================
System uname: 2.6.25-zen2-zen2 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 6000+
Timestamp of tree: Sat, 14 Jun 2008 07:33:01 +0000
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.5.2-r4
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.62
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.4
virtual/os-headers:  2.6.25-r4
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O2 -msse3 -pipe -fomit-frame-pointer -ftree-vectorize -ftree-loop-linear"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/env.d /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=athlon64 -O2 -msse3 -pipe -fomit-frame-pointer -ftree-vectorize -ftree-loop-linear -fvisibility-inlines-hidden"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.osuosl.org http://mirrors.ludost.net/gentoo/ ftp://mirrors.ludost.net/gentoo/ http://gentoo.telnet.bg/  http://gentoo.osuosl.org http://mirror.gentoo.no/ http://gentoo.ynet.sk/pub http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="bg_BGB.UTF-8"
LC_ALL="bg_BG.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--enable-new-dtags"
LINGUAS="en_GB en_US en bg"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp/"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X acl acpi alsa amd64 berkdb bitmap-fonts branding cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss encode esd evo fam firefox fortran gdbm gif gpm gstreamer gtk hal iconv ipv6 isdnlog jpeg kde kdeenablefinal kdehiddenvisibility kerberos ldap mad midi mikmod mmx mmxext mp3 mpeg mudflap ncurses nls nptl nptlonly ocamlopt ogg opengl openmp oss pam pcre pdf perl png pppd python qt3 qt3support qt4 quicktime readline reflection sdl session spell spl sse sse2 ssl ssse3 svg tcpd threads tiff truetype truetype-fonts type1-fonts unicode vorbis xcomposite xml xorg xv zlib" ALSA_CARDS="hda-nvidia hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="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 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" CAMERAS="ptp2" ELIBC="glibc" INPUT_DEVICES="keyboard mouse ps2mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_GB en_US en bg" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS




P.S. It`s the same with or without my dagerous cflags!
Comment 1 Dennis Schridde 2008-06-14 14:18:49 UTC
Addition: Portage itself should abort before this happens, like is done for qemu and the likes:

pkg_setup() {
    if [ "$(gcc-major-version)" == "4" ]; then
        eerror "qemu requires gcc-3 in order to build and work correctly"
        eerror "please compile it switching to gcc-3."
        eerror "We are aware that qemu can guess a gcc-3 but this feature"
        eerror "could be harmful."
        die "gcc 4 cannot build qemu"
    fi
}
Comment 2 Alessio Cassibba (X-Drum) 2008-08-04 21:50:30 UTC
Hi all,

(In reply to comment #0)
Apparantly is not possible to build VirtualBox with gcc-4.3.x due to gcc bugs,
this is not fully supported by upstream at the moment.

(In reply to comment #1)
Yes you are right, this given check was introduced with the virtualbox-1.6.2 ebuild, but for some reason was not commited/imported from the overlay (maybe was a mistake not sure what appened), anyway it will be introduced again.
Comment 3 Dennis Schridde 2008-08-04 22:20:13 UTC
Shouldn't this be a DEPEND="!sys-devel/gcc-4.3*" or similar?
Comment 4 Alessio Cassibba (X-Drum) 2008-08-20 21:52:39 UTC
(In reply to comment #3)
> Shouldn't this be a DEPEND="!sys-devel/gcc-4.3*" or similar?
> 

in this case it's better to tell the user what is going (in the details) wrong and stop, instead of use the blocked package way.
Comment 5 Markus Ullmann (RETIRED) gentoo-dev 2008-08-27 18:15:55 UTC
Indeed, blocking that is insufficent when it comes to toolchains given you can switch up and down as you like (whether or not that is a good thing to do is another story)

Given we have a warning now, we should wait for upstream to just fix the code
Comment 6 Navid Zamani 2008-10-14 19:09:57 UTC
[Sorry, but I posted the following comment to the wrong bug. It belongs here.]

Hi, I just tried installing virtualbox-ose and ended up with emerge telling me to use a version of gcc lower than 4.3 and dieing.

This is clearly a non-solution "solution", because, what do I do now? ;)
- Install an old gcc? This would be no different than adding a dependency on an old gcc (slot).
- Not install virtualbox? But the point was that I wanted to install it. And this would be the same thing as masking virtualbox.

I do not know where the actual bug is in, but that package should be masked... you know... for being buggy and not fit for its job. :) Even if it's god the almighty gcc 4.3. ;)

And as a temporary solution I see it like this:
- Either the user wants virtualbox. Then he wants it to be installed. Which unfortunately does require gcc <4.3 for now. If that is too heavy for me, I can still say no when I see it in  "emerge -atv virtualbox-ose".
- Or the user does not want virtualbox. Then his opinion is not related to this anyway.

Right now we get portage telling us: "Ok, I told you I can emerge virtualbox-ose, you told me to do it, but I failed and didn't, because I knew from the beginning that I could not..."
Under humans you'd call that a deliberate lie, which is far from nice behavior. :)

It is hard to love Gentoo, when it lies to you and seems to hate you. :\
Comment 7 Alessio Cassibba (X-Drum) 2008-10-14 23:38:36 UTC
(In reply to comment #6)
> [Sorry, but I posted the following comment to the wrong bug. It belongs here.]
> 
> Hi, I just tried installing virtualbox-ose and ended up with emerge telling me
> to use a version of gcc lower than 4.3 and dieing.
> 
> This is clearly a non-solution "solution", because, what do I do now? ;)
> - Install an old gcc? This would be no different than adding a dependency on a
> old gcc (slot).
Sorry about that but at this time there is no support for gcc 4.3 in VirtualBox, upstream is still working on this issue and there is not
a trivial solution to assure a full working build with this gcc release.
That's it upstream doesn't support gcc-4.3 :\

> - Not install virtualbox? But the point was that I wanted to install it. And
> this would be the same thing as masking virtualbox.
Hi i'm
> I do not know where the actual bug is in, but that package should be masked...
> you know... for being buggy and not fit for its job. :) Even if it's god the
> almighty gcc 4.3. ;)
As far i know, VirtualBox is not the only package afflicted by this kind of problems with gcc 4.3, in addition this release of gcc is still masked,
this means that all the gcc stable (or better, marked stable in tree) versions 
are working with it, so i don't see a valid reason to mask VirtualBox.
Remember that a valid alternative is to use app-emulation/virtualbox-bin 
if you don't want to downgrade gcc.
 
> It is hard to love Gentoo, when it lies to you and seems to hate you. :\
> 
no lies at all imho, gentoo it about choice, so if you choose to install and use unstable (keyworded) packages why blame gentoo? :)