Virtualbox emerge fails with 64bit kernel, offending lines: /var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/src/VBox/Runtime/common/log/logellipsis.cpp:1: error: code model kernel does not support PIC mode /var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/src/VBox/Runtime/common/log/logellipsis.cpp:1: error: code model 'kernel' not supported in the 64 bit mode -fno-PIC does not work. This is the same with earlier versions down to version 3.0.12 Reproducible: Always Steps to Reproduce: 1. emerge any version of virtualbox-ose on amd64 2. download finishes 3.crash on compile Actual Results: Crash Expected Results: complete compile and installation emerge --info =app-emulation/virtualbox-ose-3.2.6 Portage 2.1.8.3 (default/linux/amd64/10.0/desktop/gnome, gcc-4.3.4, glibc-2.11.1-r0, 2.6.32-gentoo-r7 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-2.6.32-gentoo-r7-x86_64-Intel-R-_Core-TM-_i7_CPU_M_620_@_2.67GHz-with-gentoo-1.12.13 Timestamp of tree: Tue, 06 Jul 2010 18:30:01 +0000 app-shells/bash: 4.0_p37 dev-java/java-config: 2.1.10 dev-lang/python: 2.6.5-r2, 3.1.2-r3 dev-util/cmake: 2.6.4-r3 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.13, 2.65 sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.3.4, 4.4.3-r2 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=core2 -msse4 -mcx16 -mpopcnt -msahf -O2 -pipe -fno-PIC" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/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=core2 -msse4 -mcx16 -mpopcnt -msahf -O2 -pipe -fno-PIC" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="C" LDFLAGS="-Wl,-O1" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" 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" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi aiglx alsa amd64 aoss apache2 ares asf avahi berkdb blender-game bluetooth bonjour branding bzip2 cairo cdr cli consolekit cracklib crypt cups cxx daap dbus device-mapper dirac dri dts dvd dvdr eds emboss encode evo exif extras faac faad fam ffmpeg firefox flac fortran gcrypt gdbm gdu gif glitz gnome gnome-keyring gnutls gpm gstreamer gtk hal iconv id3tag ipod ipv6 jack java jpeg kerberos ladspa latex lcms ldap libnotify libsamplerate mad mdnsresponder-compat mikmod mmx mng modules mono mp3 mp4 mpeg mtp mudflap multilib musicbrainz mysql nautilus ncurses network networkmanager new-login nls nptl nptlonly nsplugin ogg openal opengl openmp pam pango pcre pdf perl php png policykit ppds pppd python qt3support readline reflection samba sdl session soundtouch spell spl sqlite sse sse2 ssl startup-notification stream svg symlink sysfs tcpd theora threads tiff truetype twolame udev unicode usb v4l2 vamp vorbis x264 xcb xcomposite xine xinerama xml xorg xscreensaver xulrunner xv xvid zeroconf zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul 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" ELIBC="glibc" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" NETBEANS_MODULES="apisupport cnd gsf ide java mobility nb php webcommon websvccommon xml dlight enterprise harness profiler" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia intel nv vesa fbdev" 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: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Created attachment 237969 [details] build log
In my case, adding -fno-PIC solves the issue. localhost ~ # x86_64-pc-linux-gnu-g++ -c -O2 -fno-PIC -nostdinc -g -pipe -pedantic -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-long-long -Wno-variadic-macros -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fno-exceptions -fno-stack-protector -fvisibility-inlines-hidden -fvisibility=hidden -DVBOX_HAVE_VISIBILITY_HIDDEN -DRT_USE_VISIBILITY_DEFAULT -fno-rtti -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-asynchronous-unwind-tables -I/var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/src/VBox/Runtime/include -I/var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/include/iprt/nocrt -I/var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/include -I/var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/out/linux.amd64/release -DVBOX -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/usr/share/virtualbox-ose\" -DRTPATH_APP_PRIVATE_ARCH=\"/usr/lib64/virtualbox-ose\" -DRTPATH_SHARED_LIBS=\"/usr/lib64/virtualbox-ose\" -DRTPATH_APP_DOCS=\"\" -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -DIN_RING0 -DIN_RING0_AGNOSTIC -DIPRT_NO_CRT -DRT_WITH_NOCRT_ALIASES -DHC_ARCH_BITS=64 -DGC_ARCH_BITS=64 -DIN_RT_R0 -DRT_WITH_VBOX -Wp,-MD,/var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/out/linux.amd64/release/obj/RuntimeR0/common/log/logellipsis.o.dep -Wp,-MT,/var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/out/linux.amd64/release/obj/RuntimeR0/common/log/logellipsis.o -Wp,-MP -o /var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/out/linux.amd64/release/obj/RuntimeR0/common/log/logellipsis.o /var/tmp/portage/app-emulation/virtualbox-ose-3.2.6/work/VirtualBox-3.2.6_OSE/src/VBox/Runtime/common/log/logellipsis.cpp localhost ~ # echo $? 0
Changed my kernel and it worked. As you can see in the first emerge --info I did use -fno-PIC
The thing is, I'm running my system on the hardened profile, and I *can't* set a global CFLAGS=-fno-PIC, which should be done on the package ebuild instead...