Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 122228 - Qemu 0.7.x / 0.8.0 GCC 4 fixes
Summary: Qemu 0.7.x / 0.8.0 GCC 4 fixes
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Luca Barbato
URL: http://lists.gnu.org/archive/html/qem...
Whiteboard:
Keywords:
: 124815 127623 137482 144864 155297 158158 (view as bug list)
Depends on:
Blocks: 117482
  Show dependency tree
 
Reported: 2006-02-09 03:04 UTC by Robert Führicht
Modified: 2008-03-31 13:27 UTC (History)
19 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 Robert Führicht 2006-02-09 03:04:12 UTC
http://lists.gnu.org/archive/html/qemu-devel/2005-11/msg00245.html

Gwenole Beauchesne says here that these patches work fine for x86, but would break x86_64 qemu. He was talking about 0.7 in this post, I dont't know if it's going to break 0.8.0 on amd64 (I'll try and report back)

Find the patches here:
http://cvs.mandriva.com/cgi-bin/cvsweb.cgi/contrib-SPECS/qemu/
Comment 1 Robert Führicht 2006-02-09 12:41:02 UTC
So far so good:
it built fine on amd64. I'm currently installing Windows XP in Qemu, running qemu-system-x86_64. I can't confirm the problems author of these patches has on amd64 - all seems to work fine.
Comment 2 Morgan Collins 2006-03-23 11:33:42 UTC
Any idea if/when these patches will be included intree or pushed upstream?
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2006-03-26 04:12:56 UTC
*** Bug 127623 has been marked as a duplicate of this bug. ***
Comment 4 Mark Loeser (RETIRED) gentoo-dev 2006-04-19 21:08:09 UTC
lu_zero, could you please test out these patches and include them if they don't break anything?
Comment 5 radoslaww 2006-04-27 14:16:41 UTC
I tested qemu-0.8.0 witn gcc 4.1.0 and this patch:

http://cvs.mandriva.com/cgi-bin/cvsweb.cgi/contrib-SPECS/qemu/qemu-0.8.0-gcc4-hacks.patch

It compiles and works.
Comment 6 Luca Barbato gentoo-dev 2006-05-06 00:52:29 UTC
*** Bug 124815 has been marked as a duplicate of this bug. ***
Comment 7 Stefan Schweizer (RETIRED) gentoo-dev 2006-05-07 05:26:00 UTC
lu_zero: Please fix this bug
Comment 8 Luca Barbato gentoo-dev 2006-05-07 11:59:47 UTC
Looks like I didn't set the resolution, the patch got in few days ago, is it working for everybody?
Comment 9 Ivan Yosifov 2006-05-07 13:59:02 UTC
Seems to fail here:

home ~ # emerge -p1v qemu-softmmu

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U ] app-emulation/qemu-softmmu-0.8.1 [0.8.0] USE="kqemu sdl" 0 kB

Total size of downloads: 0 kB
home ~ # emerge -1 qemu-softmmu
Calculating dependencies... done!
>>> Emerging (1 of 1) app-emulation/qemu-softmmu-0.8.1 to /
>>> checking ebuild checksums
>>> checking auxfile checksums
>>> checking miscfile checksums
>>> checking distfiles checksums
 * Qemu could not build with GCC 4
>>> Unpacking source...
>>> Unpacking qemu-0.8.1.tar.gz to /var/tmp/portage/qemu-softmmu-0.8.1/work
>>> Unpacking kqemu-0.7.2.tar.gz to /var/tmp/portage/qemu-softmmu-0.8.1/work
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1 ...
...
gcc -O2 -Wall -O2 -g -fno-strict-aliasing -fomit-frame-pointer -I. -I.. -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/target-i386 -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/fpu -DHAS_AUDIO -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/slirp -c -o exec.o /var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/exec.c
gcc -O2 -Wall -O2 -g -fno-strict-aliasing -fomit-frame-pointer -I. -I.. -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/target-i386 -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/fpu -DHAS_AUDIO -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/slirp -c -o kqemu.o /var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/kqemu.c
gcc -O2 -Wall -O2 -g -fno-strict-aliasing -fomit-frame-pointer -mpreferred-stack-boundary=2 -falign-functions=0 -fno-gcse -fno-reorder-blocks -fno-optimize-sibling-calls -I. -I.. -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/target-i386 -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/fpu -DHAS_AUDIO -I/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/slirp -c -o op.o /var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/target-i386/op.c
/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/target-i386/ops_template_mem.h: In function ‘op_rcrb_kernel_T0_T1_cc’:
../softmmu_header.h:207: error: can't find a register in class ‘GENERAL_REGS’ while reloading ‘asm’
make[1]: *** [op.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/qemu-softmmu-0.8.1/work/qemu-0.8.1/i386-softmmu'
make: *** [all] Error 1

!!! ERROR: app-emulation/qemu-softmmu-0.8.1 failed.
Call stack:
  ebuild.sh, line 1525:   Called dyn_compile
  ebuild.sh, line 928:   Called src_compile
  qemu-softmmu-0.8.1.ebuild, line 84:   Called die

!!! make failed
!!! If you need support, post the topmost build error, and the call stack if relevant.

home ~ # emerge --info
Portage 2.1_pre10-r3 (default-linux/x86/2005.1, gcc-4.1.0, glibc-2.4-r1, 2.6.16-gentoo-r6 i686)
=================================================================
System uname: 2.6.16-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 3.20GHz
Gentoo Base System version 1.12.0_pre19
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python:     2.4.3
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
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-r2
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=prescott -mtune=prescott -fomit-frame-pointer -pipe"
CHOST="i686-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/share/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O2 -march=prescott -mtune=prescott -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.ITDNet.net/gentoo"
LANG="en_US.utf8"
LC_ALL="en_US.utf8"
LINGUAS="en de"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/obelix /usr/local/portage/migration/migration /usr/local/portage/migration/obelix"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aac acl alsa apache2 avi bash-completion bzip2 cairo cdr crypt cups dbus doc dri dts dvd dvdr dvdread elibc_glibc encode esd exif fam ffmpeg firefox flac gd gif glitz glut gmp gnome gnutls gpm gstreamer gtk gtk2 hal howl imagemagick jpeg kde kdeenablefinal kernel_linux lcms logrotate mad mikmod mmap mmx mng mp3 mpeg ncurses nls nptl nsplugin nvidia ogg opengl pam pdf pic png qt quicktime readline sdl session snmp spell sqlite sse sse2 ssl svg threads tidy tiff truetype unicode usb userland_GNU vcd vorbis win32codecs wmf x86 xine xml xml2 xv xvid zlib input_devices_keyboard input_devices_mouse input_devices_evdev linguas_en linguas_de video_cards_nv"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 10 Mike McQuaid 2006-05-23 12:43:26 UTC
Same problem here, can we have an -r1 with the Mandrake patch?
Comment 11 Luca Barbato gentoo-dev 2006-05-23 12:57:45 UTC
please sync, I put the patch in even if it isn't solving anything about functionality (doesn't work properly/at all even if it builds...)
Comment 12 Carlo Marcelo Arenas Belon 2006-05-30 01:38:40 UTC
qemu-user-0.8.1 fails with gcc4.1/amd64 (x86_64-pc-linux-gnu-4.1.1) because of invalid symbol being generated by dyngen and as detailed in bug132667.

path in attachment 87789 [details, diff] (http://bugs.gentoo.org/attachment.cgi?id=87789) could be used to let qemu compile but not work.
Comment 13 Alexey Parshin 2006-06-19 05:18:33 UTC
The problem still exist. Can't compile qemu-softmmu-0.8.1 with gcc 4.1.1.
Comment 14 Jakub Moc (RETIRED) gentoo-dev 2006-06-21 05:33:30 UTC
*** Bug 137482 has been marked as a duplicate of this bug. ***
Comment 15 Ivan Yosifov 2006-07-13 09:22:09 UTC
qemu-softmmu-0.8.1-r1 emerges fine here with gcc 4.1.1
Comment 16 Stefan Schweizer (RETIRED) gentoo-dev 2006-07-13 09:26:29 UTC
yes, this is fixed, thanks.
Comment 17 Alexey Parshin 2006-07-13 16:07:59 UTC
It does compile now, but doesn't work. This is dual core Intel machine. Somehow, it compiled and works even w/o patches on dual opteron I also have.
Comment 18 Ivan Yosifov 2006-07-14 09:13:47 UTC
Strange. It works here. Perhaps you should open a separate bug.
Comment 19 Jakub Moc (RETIRED) gentoo-dev 2006-08-23 09:08:48 UTC
*** Bug 144864 has been marked as a duplicate of this bug. ***
Comment 20 Jakub Moc (RETIRED) gentoo-dev 2006-11-15 13:25:23 UTC
*** Bug 155297 has been marked as a duplicate of this bug. ***
Comment 21 Jakub Moc (RETIRED) gentoo-dev 2006-12-14 13:23:37 UTC
*** Bug 158158 has been marked as a duplicate of this bug. ***
Comment 22 Triffid Hunter 2008-03-31 12:52:33 UTC
I'm getting can't find a register in class ‘GENERAL_REGS’ with qemu-user-0.9.0, using gcc-4.2.3 on i686