Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 505482 - app-emulation/virtualbox-4.3.8 - .../work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/include/state/cr_bufferobject.h:12:33: fatal error: state/cr_statefuncs.h: No such file or directory
Summary: app-emulation/virtualbox-4.3.8 - .../work/VirtualBox-4.3.8/src/VBox/GuestHost...
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Viorel Munteanu
URL:
Whiteboard:
Keywords:
: 602210 617318 686414 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-03-23 19:15 UTC by Justin Lecher (RETIRED)
Modified: 2022-11-08 18:06 UTC (History)
9 users (show)

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


Attachments
virtualbox-4.3.8:20140323-190837.log.xz (virtualbox-4.3.8:20140323-190837.log.xz,55.90 KB, application/x-xz)
2014-03-23 19:16 UTC, Justin Lecher (RETIRED)
Details
prevent_parallel_build_failure.patch (prevent_parallel_build_failure.patch,831 bytes, patch)
2019-05-29 22:35 UTC, Greg Turner
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Justin Lecher (RETIRED) gentoo-dev 2014-03-23 19:15:12 UTC
In file included from /var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/include/state/cr_client.h:12:0,
                 from /var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/include/cr_pixeldata.h:11,
                 from /var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/util/pixel.c:7:
/var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/include/state/cr_bufferobject.h:12:33: fatal error: state/cr_statefuncs.h: No such file or directory
 #include "state/cr_statefuncs.h"
                                 ^
compilation terminated.
kmk: *** [/var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/out/linux.amd64/release/obj/VBoxOGLhostcrutil/util/pixel.o] Error 1
--
kmk_builtin_append -n "/var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/out/linux.amd64/release/obj/VBoxOGLhostcrutil/util/rand.o.dep" "" "/var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/util/rand.c:" ""
In file included from /var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/include/state/cr_client.h:12:0,
                 from /var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/include/cr_pixeldata.h:11,
                 from /var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/util/net.c:27:
/var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/src/VBox/GuestHost/OpenGL/include/state/cr_bufferobject.h:12:33: fatal error: state/cr_statefuncs.h: No such file or directory
 #include "state/cr_statefuncs.h"
                                 ^
kmk_builtin_append -n "/var/tmp/portage/app-emulation/virtualbox-4.3.8/work/VirtualBox-4.3.8/out/linux.amd64/release/obj/VBoxOGLhostcrutil/util/bufpool.o.dep" "" "/var/tmp/portage/app-emulation/virtu



$ einfo virtualbox
Portage 2.2.8-r1 (default/linux/amd64/13.0, gcc-4.8.2, glibc-2.19, 3.13.6-lh-nvidia x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.13.6-lh-nvidia-x86_64-Intel-R-_Core-TM-_i7-2600_CPU_@_3.40GHz-with-gentoo-2.2
KiB Mem:    16344408 total,   1120524 free
KiB Swap:    3987452 total,   3902784 free
Timestamp of tree: Sat, 22 Mar 2014 08:00:01 +0000
ld GNU gold (GNU Binutils 2.24) 1.11
ccache version 3.1.9 [enabled]
app-shells/bash:          4.2_p45-r1
dev-java/java-config:     2.2.0
dev-lang/python:          2.6.9, 2.7.6, 3.2.5-r3, 3.3.4
dev-util/ccache:          3.1.9-r3
dev-util/cmake:           2.8.12.2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12.4
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.10.3, 1.11.6, 1.13.4, 1.14.1
sys-devel/binutils:       2.24-r2
sys-devel/gcc:            4.4.7, 4.5.4, 4.6.4, 4.7.3-r1, 4.8.2-r1
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           4.0-r1
sys-kernel/linux-headers: 3.13 (virtual/os-headers)
sys-libs/glibc:           2.19
Repositories: gentoo sunrise bicatali betagarden dummy Neurogeek science Raspberry-Pi-Overlay last-hope g-ctan
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -ftracer   -march=native -mtune=native -frecord-gcc-switches -g -Wimplicit-function-declaration"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib/systemd/system /usr/share/eselect/ /usr/share/gnupg/qualified.txt /usr/share/nano/ /var/lib/hsqldb /var/spool/munin-async/.ssh"
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"
CXXFLAGS="-O2 -pipe -ftracer   -march=native -mtune=native -frecord-gcc-switches -g -Wenum-compare"
DISTDIR="/var/cache/portage/distfiles"
EMERGE_DEFAULT_OPTS=" -vt --keep-going --autounmask-write --autounmask --quiet-build=n"
FCFLAGS="-O2 -pipe -ftracer   -march=native -mtune=native -frecord-gcc-switches -g"
FEATURES="assume-digests binpkg-logs buildsyspkg ccache cgroup collision-protect compressdebug distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news noinfo parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms sign split-log splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -ftracer   -march=native -mtune=native -frecord-gcc-switches -g"
GENTOO_MIRRORS=" /mnt/tmpfs/ http://gentoo.j-schmitz.net/mirror/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo/"
LANG="en_GB.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common"
MAKEOPTS="-j12 -l9"
PKGDIR="/var/cache/portage/packages"
PORTAGE_COMPRESS="xz"
PORTAGE_COMPRESS_FLAGS="-z -e -9 -v"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--omit-dir-times"
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"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/local/overlays/sunrise-reviewed /local/overlays/bicatali /local/overlays/betagarden /local/overlays/dummy /local/overlays/neurogeek /local/overlays/sci /local/overlays/gen2pi /local/overlays/lh-overlay /local/overlays/g-ctan"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl alsa amd64 avx bash-completion berkdb branding bzip2 cairo caps cli cracklib crypt cxx dbus dri fortran gdbm gif gmp gnome gnome-keyring gstreamer gtk iconv icu ipv6 jpeg jpeg2k mmx mmxext modules ncurses network-cron nls nptl nsplugin numa opengl openmp pam pcre pgo png pulseaudio qt3support raw readline session smp sse sse2 sse2_4way sse2check sse3 sse4 sse41 sse4_1 sse4_2 sse4a ssl ssse3 startup-notification systemd tcpd threads tiff truetype unicode vaapi vdpau xattr xinerama zlib" ABI_X86="64" ALSA_CARDS="hda-intel" 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" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DRACUT_MODULES="plymouth" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer pdfimport scripting-javascript wiki-publisher nlpsolver" LINGUAS="en" NGINX_MODULES_HTTP="access auth_basic autoindex browser charset empty_gif fastcgi geo gzip limit_conn limit_req map memcached proxy referer rewrite scgi split_clients ssi upstream_ip_hash userid uwsgi stub_status" OFFICE_IMPLEMENTATION="libreoffice" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_6 python2_7 python3_2 python3_3 pypy2_0" QEMU_SOFTMMU_TARGETS="i386 x86_64 arm armeb" QEMU_USER_TARGETS="i386 x86_64 arm armeb" RUBY_TARGETS="ruby19" USERLAND="GNU" VIDEO_CARDS="nvidia nouveau" 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"
USE_PYTHON="2.6 2.7 3.2 3.3 2.7-pypy-2.0"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND

=================================================================
                        Package Settings
=================================================================

app-emulation/virtualbox-4.3.8 was built with the following:
USE="additions extensions multilib opengl pam pulseaudio qt4 sdk -alsa -doc -headless -java -python -vboxwebsrv -vnc" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7"
Comment 1 Justin Lecher (RETIRED) gentoo-dev 2014-03-23 19:16:14 UTC
Created attachment 373342 [details]
virtualbox-4.3.8:20140323-190837.log.xz

build.log
Comment 2 eroen 2014-12-12 16:40:31 UTC
I ran into this with virtualbox-4.3.20 with MAKEOPTS="-j4 -l6". For reference, bug 378759 and bug 420397 are almost certainly referring to the same issue.

Build finishes without error with empty MAKEOPTS, indicating a build system bug.
Comment 3 Sergiy Borodych 2015-03-05 08:21:22 UTC
Catch the same issue with virtualbox-4.3.24, bu not have it before.
I've commented (thanks @eroen for tip)

``
#MAKEOPTS="-j5 --load-average=4"
``

and all seems fine after (but much slower...)
Comment 4 Chris Jowett 2015-05-22 05:04:29 UTC
Also affects app-emulation/virtualbox-4.3.18 with the exact same symptoms and the same workaround as a fix (only I did it with package.env to only have this package use make -j1)
Comment 5 G.Wolfe Woodbury 2015-07-29 02:06:44 UTC
I explored this a bit.  A parallel build with -j2 always succedes, -j3 fails about half the time, -j>4 always fails.

It seems to be a missing internal dependency that lets the cr_bufferobject.h get built before the cr_statefuncs.h has been properly generated.

Probably needs to be bumped upstream and v5 needs checking for the same problem.
Comment 6 Alan McKinnon 2015-09-13 20:55:53 UTC
Virtualbox-5.0.4 failed for me too with -j4. Re-emerging with MAKEOPTS="-j2" succeeded. I only ran the build once so can't say if it always works with -j2, but it did succeed at least once.

So the problem affects v5 also.
Comment 7 G.Wolfe Woodbury 2015-09-28 06:50:02 UTC
There is an easy workaround for this based on some features that Portage provides.

create a file:  /etc/portage/package.env
that contains 1 line:
      app-emulation/virtualbox   vbox-makeopts

then mkdir: /etc/portage/env/
and a file: /etc/portage/env/vbox-makeopts
containing:
      MAKEOPTS="-j2 -l7.5"

(the -l value can be whatever you want)

Portage, when building virtualbox will "automagically" read the vbox-makeopts file and apply it when building.

I still haven't had time to figure out what the proper dependency fix for the upstream makefiles may be.
Comment 8 Jiří Moravec 2016-01-21 16:16:02 UTC
app-emulation/virtualbox-5.0.14 failed again :-(
Only with MAKEOPTS="-j2 -l7.5" build succeeded.
Comment 9 Florian Schmaus gentoo-dev 2017-05-03 10:07:51 UTC
*** Bug 617318 has been marked as a duplicate of this bug. ***
Comment 10 Coacher 2017-05-03 10:18:15 UTC
*** Bug 602210 has been marked as a duplicate of this bug. ***
Comment 11 Ben Kohler gentoo-dev 2017-08-31 18:17:57 UTC
Is this still a problem on recent versions?
Comment 12 Georgy Yakovlev archtester gentoo-dev 2017-10-02 20:50:58 UTC
(In reply to Ben Kohler from comment #11)
> Is this still a problem on recent versions?

yes.
just hit this with app-emulation/virtualbox-5.1.28
Comment 13 Georgy Yakovlev archtester gentoo-dev 2017-12-18 22:08:31 UTC
app-emulation/virtualbox-5.1.30 is still affected.

easiest fix so far is

 mkdir -p /etc/portage/env/app-emulation
 echo 'MAKEOPTS="-j2"' > /etc/portage/env/app-emulation/virtualbox
Comment 14 Georgy Yakovlev archtester gentoo-dev 2018-01-07 03:00:07 UTC
not really following what has changed, but I've build 5.2.4 with -j32 and it just worked fine, no errors.
Comment 15 Fabio Rossi 2019-04-27 13:33:44 UTC
just got the same problem with virtualbox 6.0.6-r1, using MAKEOPTS="-j8 -l8"
Comment 16 Greg Turner 2019-05-29 22:35:25 UTC
Created attachment 578028 [details, diff]
prevent_parallel_build_failure.patch

Likewise here: =virtualbox-6.0.8 USE="alsa doc dtrace* java opengl opus pam python qt5 sdk udev vboxwebsrv vnc -debug -headless -libressl -lvm -pax_kernel -pulseaudio".  $(< /usr/portage/metadata/timestamp) == 'Fri May 24 15:38:49 UTC 2019'.

I've merged this package a few times without incident since Friday, so perhaps I am running good, or perhaps it's a once-in-a-blue-moon thing.  Or, maybe turning on the dtrace use-flag caused it?

Virtualbox already takes a good long time to compile so I wasn't super keen to clamp parallelization of this ebuild.

Cooked up the attached patch based on cargo-cult makefile cut-and-paste from working targets that appeared to also need those headers pre-built.

With the attached patch in /etc/portage/patches/app-emulation/virtualbox, it passed (approximately) the following crude bash-scripted test (relies on homebrew scripts but should be self-evident)

(
  cd /usr/portage/app-emulation/virtualbox && \
  export CFLAGS="-O1 -pipe" && \
  export CXXFLAGS="${CFLAGS}" && \
  for foo in $(seq 6); do
    export MAKEOPTS="-j$(badrng 3 31)" && \
    ebuild virtualbox-6.0.8.ebuild clean compile &>/dev/null || {
      badnews "vbox -jfuzz"
      exit 1
    }
  done
) && goodnews "vbox -jfuzz"

Maybe other folks finding themselves here could give the patch a try?  Especially if you get mostly repeatable failures in your environment.  Hard to rule out type I error given that:

  o I've only seen it fail one time so it might be easy to get lucky
  o Each test takes a good 10-60 min depending on -j used
  o I have no clue what my patch actually does :)
Comment 17 Georgy Yakovlev archtester gentoo-dev 2019-06-08 07:41:28 UTC
*** Bug 686414 has been marked as a duplicate of this bug. ***
Comment 18 Fabio Rossi 2019-10-30 10:17:37 UTC
same problem with virtualbox-6.0.14
Comment 19 Viorel Munteanu gentoo-dev 2022-11-08 18:06:37 UTC
Does this still happen?  I always compile it with -j12 and never had this problem.  Also the files from the patch are gone, so maybe upstream fixed it.

If reopen please attach a new build log, the old one is no longer meaningful.