Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 478708 - =xen-tools-4.2.2-r4: link fail with USE=qemu enabled
Summary: =xen-tools-4.2.2-r4: link fail with USE=qemu enabled
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Xen Devs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-07-30 01:42 UTC by Yixun Lan
Modified: 2013-07-31 13:13 UTC (History)
0 users

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


Attachments
full build log (build.log.xz,22.96 KB, application/x-xz)
2013-07-30 01:47 UTC, Yixun Lan
Details
patch to fix this problem (xen-tools-4.2-aiolibs.patch,544 bytes, patch)
2013-07-30 01:49 UTC, Yixun Lan
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Yixun Lan archtester gentoo-dev 2013-07-30 01:42:00 UTC
CC    i386-dm/pass-through.o
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/hw/xen_blktap
.c: In function ‘open_disk’:
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/hw/xen_blktap
.c:229:10: warning: ignoring return value of ‘asprintf’, declared with attribute warn_unused_result [-Wunused-result]
  CC    i386-dm/pt-msi.o
  CC    i386-dm/pt-graphics.o
  CC    i386-dm/kqemu.o
  CC    i386-dm/i386-dis.o
  AR    i386-dm/libqemu.a
  LINK  i386-dm/qemu-dm
vl.o: In function `dynticks_stop_timer':
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1603: un
defined reference to `timer_delete'
vl.o: In function `dynticks_start_timer':
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1585: un
defined reference to `timer_create'
vl.o: In function `dynticks_rearm_timer':
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1620: un
defined reference to `timer_gettime'
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1633: un
defined reference to `timer_settime'
collect2: error: ld returned 1 exit status
make[3]: *** [qemu-dm] Error 1
make[3]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-x
en-traditional-dir/i386-dm'
make[2]: *** [subdir-i386-dm] Error 2
make[2]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-x
en-traditional-dir'
make[1]: *** [subdir-all-qemu-xen-traditional-dir] Error 2
make[1]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools'
make: *** [subdirs-all] Error 2
make: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools'
 * ERROR: app-emulation/xen-tools-4.2.2-r4 failed (compile phase):
 *   emake failed


Reproducible: Always






 emerge --info =app-emulation/xen-tools-4.2.2-r4
Portage 2.2.0_alpha188 (default/linux/amd64/13.0, gcc-4.8.1, glibc-2.17, 3.9.11-gentoo-r1 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.9.11-gentoo-r1-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q8200_@_2.33GHz-with-gentoo-2.2
KiB Mem:     5539020 total,   1468932 free
KiB Swap:    9974484 total,   9974484 free
Timestamp of tree: Mon, 29 Jul 2013 10:45:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
app-shells/bash:          4.2_p45
dev-java/java-config:     2.2.0
dev-lang/python:          2.7.5-r1, 3.1.5-r1, 3.2.5-r1, 3.3.2-r1
dev-util/cmake:           2.8.11.1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.9.6-r3, 1.11.6, 1.12.6, 1.13.4, 1.14
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.6.3, 4.7.2-r1, 4.8.1
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r5::gnome
sys-kernel/linux-headers: 3.9 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo local xfce-dev gnome dilfridge dustin bleeding-edge gamerlay anderse enlightenment-niifaq virtualization systemd sunrise gentoo-zh phablet kde dway dlan proxy-maint gentoo-android ofree
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* @EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=core2 "
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/polkit-1/actions /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/php/cli-php5.5/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="-O2 -pipe -march=core2 "
DISTDIR="/mnt/proj/gentoo/locals2"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ofire/ ftp://ofire/ http://mirrors.163.com/gentoo http://mirrors.xmu.edu.cn/gentoo http://ftp.twaren.net/Linux/Gentoo http://mirror.averse.net/pub/gentoo "
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j8 -l8"
PKGDIR="/mnt/proj/gentoo/package"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --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="/var/lib/layman/local /var/lib/layman/xfce-dev /var/lib/layman/gnome /var/lib/layman/dilfridge /var/lib/layman/dustin /var/lib/layman/bleeding-edge /var/lib/layman/gamerlay /var/lib/layman/anderse /var/lib/layman/enlightenment-niifaq /var/lib/layman/virtualization /var/lib/layman/systemd /var/lib/layman/gentoo-sunrise /var/lib/layman/gentoo-zh /var/lib/layman/phablet /var/lib/layman/kde /var/lib/layman/dway /var/lib/layman/dlan /var/lib/layman/proxy-upstream /var/lib/layman/gentoo-android /var/lib/layman/ofree"
SYNC="rsync://mirrors.xmu.edu.cn/gentoo-portage"
USE="X acl amd64 berkdb bzip2 cli cracklib crypt cxx doc dri fortran gdbm gpm iconv ipv6 mmx modules mudflap multilib ncurses nls nptl openmp pam pcre qt3support readline session sse sse2 ssl tcpd unicode wayland zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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" 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 ubx" INPUT_DEVICES="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US zh zh_CN" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_1 python3_2" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev vesa intel i915 i965" 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.7 3.1 3.2"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

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

app-emulation/xen-tools-4.2.2-r4 was built with the following:
USE="api doc ocaml pygrub qemu screen xend -custom-cflags -debug -flask -hvm -static-libs" PYTHON_SINGLE_TARGET="python2_7 -python2_6" PYTHON_TARGETS="python2_7 -python2_6"
CFLAGS=""
CXXFLAGS="-O2 -pipe -march=core2 -fno-strict-overflow"
LDFLAGS=""
Comment 1 Yixun Lan archtester gentoo-dev 2013-07-30 01:47:12 UTC
Created attachment 354560 [details]
full build log
Comment 2 Yixun Lan archtester gentoo-dev 2013-07-30 01:49:24 UTC
Created attachment 354562 [details, diff]
patch to fix this problem
Comment 3 Ian Delaney (RETIRED) gentoo-dev 2013-07-30 09:50:12 UTC
This looks like an instance described in bug 472976.
Try the fix in place there and re-post if it fixes, otherwise there's your submitted patch
Comment 4 Yixun Lan archtester gentoo-dev 2013-07-30 10:53:59 UTC
(In reply to Ian Delaney from comment #3)
> This looks like an instance described in bug 472976.
> Try the fix in place there and re-post if it fixes, otherwise there's your
> submitted patch

Hi, I tried to sync the latest portage tree, and found the patch (xen-tools-4.2.2-install.patch) from bug #472976 is already applied. but I still have the same  problem. I believe it's not same.

what additional information do you want me to provide? let me know, thanks.
Comment 5 Yixun Lan archtester gentoo-dev 2013-07-30 10:56:08 UTC
(In reply to Dennis 'dlan' Lan from comment #4)
> (In reply to Ian Delaney from comment #3)
> > This looks like an instance described in bug 472976.
> > Try the fix in place there and re-post if it fixes, otherwise there's your
> > submitted patch
> 
> Hi, I tried to sync the latest portage tree, and found the patch
> (xen-tools-4.2.2-install.patch) from bug #472976 is already applied. but I
> still have the same  problem. I believe it's not same.
> 
> what additional information do you want me to provide? let me know, thanks.

another question, is that possible to make the compiling information more verbose?
like show me the CFLAGS, INCLUDE file, etc, so I could know what goes wrong..

thanks
Comment 6 Ian Delaney (RETIRED) gentoo-dev 2013-07-30 13:42:50 UTC
(In reply to Dennis 'dlan' Lan from comment #4)
> Hi, I tried to sync the latest portage tree, and found the patch
> (xen-tools-4.2.2-install.patch) from bug #472976 is already applied. but I
> still have the same  problem. I believe it's not same.
> 

right

> what additional information do you want me to provide? let me know, thanks.

that's enough.

> another question, is that possible to make the compiling information more > verbose?
> like show me the CFLAGS, INCLUDE file, etc, so I could know what goes wrong..
> thanks

ok thx that's good we have a known outcome for it at your end with tools-4.2.2-install.patch known to be applied.  I'll add your patch now.

The verbosity level is a detail I 'ought' know about but I don't really, however, set V= greater than 1 between emake and CC="$(tc-getCC)" @ line245 in src_compile(), like emake V=2  CC="$(tc-getCC)" ..... and post result.

  30 Jul 2013; Ian Delaney <idella4@gentoo.org>
  files/xen-tools-4.2.2-install.patch:
  extend xen-tools-4.2.2-install.patch with patch by D. Lan via Bug 478708,
  hopefully fixes the bug
Comment 7 Yixun Lan archtester gentoo-dev 2013-07-30 15:29:32 UTC
verbose log


x86_64-pc-linux-gnu-gcc -I. -I.. -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/i386-dm -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional -MMD -MT i386-dis.o -MP -DNEED_CPU_H -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/tcg -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/tcg/x86_64 -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/fpu  -DHAS_AUDIO -DHAS_AUDIO_CHOICE -DHAS_AUDIO -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/libxc -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/xenstore -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/include -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/blktap/lib -O2 -g -fno-strict-aliasing -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs   -D__XEN_TOOLS__ -MMD -MF .i386-dis.o.d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls  -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -DCONFIG_PASSTHROUGH  -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/qemu-xen-traditional/hw  -m64 -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -DCONFIG_PASSTHROUGH  -c -o i386-dis.o /var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/i386-dis.c
rm -f libqemu.a && ar rcs libqemu.a kqemu.o i386-dis.o
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/hw/cirrus_vga.c: In function ‘vga_ioport_read’:
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/hw/cirrus_vga.c:2777:5: warning: ‘val’ may be used uninitialized in this function [-Wmaybe-uninitialized]
     return val;
     ^
x86_64-pc-linux-gnu-gcc -O2 -g -fno-strict-aliasing -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs   -D__XEN_TOOLS__ -MMD -MF ..d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls  -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -DCONFIG_PASSTHROUGH  -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/qemu-xen-traditional/hw  -m64 -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -O2 -g -fno-strict-aliasing -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs   -D__XEN_TOOLS__ -MMD -MF ..d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls  -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -g -Wl,--warn-common      -m64 -o qemu-dm vl.o osdep.o monitor.o pci.o loader.o isa_mmio.o machine.o dma-helpers.o virtio.o virtio-blk.o virtio-net.o virtio-console.o fw_cfg.o posix-aio-compat.o block-raw-posix.o lsi53c895a.o esp.o usb-ohci.o eeprom93xx.o eepro100.o ne2000.o pcnet.o rtl8139.o e1000.o msmouse.o sb16.o es1370.o ac97.o pcspk.o ide.o pckbd.o ps2.o vga.o dma.o fdc.o mc146818rtc.o serial.o i8259.o i8254.o pc.o cirrus_vga.o parallel.o piix_pci.o usb-uhci.o hpet.o device-hotplug.o pci-hotplug.o piix4acpi.o xenstore.o xen_platform.o xen_machine_fv.o xen_machine_pv.o xen_backend.o xenfb.o xen_console.o xen_disk.o exec-dm.o pci_emulation.o helper2.o battery_mgmt.o xen_blktap.o tpm_tis.o pass-through.o pt-msi.o pt-graphics.o ../libqemu_common.a libqemu.a  -lm -lz  -lgnutls   -lbluetooth   -lpthread -lutil -L/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/libxc -lxenctrl -lxenguest -L/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/xenstore -lxenstore -L/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/blktap/lib -lblktap -lpci -lSDL -lpthread -lX11 -lXext -lGL  -lncurses  
vl.o: In function `dynticks_stop_timer':
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1603: undefined reference to `timer_delete'
vl.o: In function `dynticks_start_timer':
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1585: undefined reference to `timer_create'
vl.o: In function `dynticks_rearm_timer':
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1620: undefined reference to `timer_gettime'
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/vl.c:1633: undefined reference to `timer_settime'
collect2: error: ld returned 1 exit status
make[3]: *** [qemu-dm] Error 1
make[3]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional-dir/i386-dm'
make[2]: *** [subdir-i386-dm] Error 2
make[2]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional-dir'
make[1]: *** [subdir-all-qemu-xen-traditional-dir] Error 2
make[1]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools'
make: *** [subdirs-all] Error 2
make: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools'
 * ERROR: app-emulation/xen-tools-4.2.2-r4 failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=app-emulation/xen-tools-4.2.2-r4'`,
 * the complete build log and the output of `emerge -pqv '=app-emulation/xen-tools-4.2.2-r4'`.
 * This ebuild is from an overlay named 'dlan': '/var/lib/layman/dlan/'
 * The complete build log is located at '/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/temp/environment'.
 * Working directory: '/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2'
 * S: '/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2'
!!! <xen-tools-4.2.2-r4> Compile Fail: store temp directory
Comment 8 Yixun Lan archtester gentoo-dev 2013-07-30 15:46:09 UTC
compile log with your patch applied (I've synced with latest update) 


=============

/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/hw/cirrus_vga.c: In function ‘vga_ioport_read’:
/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional/hw/cirrus_vga.c:2777:5: warning: ‘val’ may be used uninitialized in this function [-Wmaybe-uninitialized]
     return val;
     ^
x86_64-pc-linux-gnu-gcc -O2 -g -fno-strict-aliasing -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs   -D__XEN_TOOLS__ -MMD -MF ..d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls  -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -DCONFIG_PASSTHROUGH  -I/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/qemu-xen-traditional/hw  -m64 -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -O2 -g -fno-strict-aliasing -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs   -D__XEN_TOOLS__ -MMD -MF ..d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls  -Wno-unused -Wno-declaration-after-statement -Wno-pointer-sign  -g -Wl,--warn-common      -m64 -o qemu-dm vl.o osdep.o monitor.o pci.o loader.o isa_mmio.o machine.o dma-helpers.o virtio.o virtio-blk.o virtio-net.o virtio-console.o fw_cfg.o posix-aio-compat.o block-raw-posix.o lsi53c895a.o esp.o usb-ohci.o eeprom93xx.o eepro100.o ne2000.o pcnet.o rtl8139.o e1000.o msmouse.o sb16.o es1370.o ac97.o pcspk.o ide.o pckbd.o ps2.o vga.o dma.o fdc.o mc146818rtc.o serial.o i8259.o i8254.o pc.o cirrus_vga.o parallel.o piix_pci.o usb-uhci.o hpet.o device-hotplug.o pci-hotplug.o piix4acpi.o xenstore.o xen_platform.o xen_machine_fv.o xen_machine_pv.o xen_backend.o xenfb.o xen_console.o xen_disk.o exec-dm.o pci_emulation.o helper2.o battery_mgmt.o xen_blktap.o tpm_tis.o pass-through.o pt-msi.o pt-graphics.o ../libqemu_common.a libqemu.a  -lm -lz  -lgnutls   -lbluetooth   -lpthread -lrt -lutil -L/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/libxc -lxenctrl -lxenguest -L/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/xenstore -lxenstore -L/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/../tools/blktap/lib -lblktap -lpci -lSDL -lpthread -lX11 -lXext -lGL  -lncurses  
make[3]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional-dir/i386-dm'
make[2]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools/qemu-xen-traditional-dir'
make[1]: Leaving directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools'
make[1]: Entering directory `/var/tmp/portage/app-emulation/xen-tools-4.2.2-r4/work/xen-4.2.2/tools'
Comment 9 Yixun Lan archtester gentoo-dev 2013-07-30 15:51:32 UTC
I can confirm the latest version (4.2.2-r4) works for me. thanks for adding this.

but it seems wrong to patch ./configure, but I haven't find any configure.ac file.. may look after this later when I have time.
Comment 10 Ian Delaney (RETIRED) gentoo-dev 2013-07-30 16:01:21 UTC
(In reply to Dennis 'dlan' Lan from comment #9)
> I can confirm the latest version (4.2.2-r4) works for me. thanks for adding
> this.
> 
> but it seems wrong to patch ./configure, but I haven't find any configure.ac
> file.. may look after this later when I have time.

Y're second guessing yourself?  You patched configure and it worked.  configure.ac spells autotools and xen has no autotools use, so yes a prepared hard coded configure script to go.
Comment 11 Yixun Lan archtester gentoo-dev 2013-07-30 16:17:46 UTC
(In reply to Ian Delaney from comment #10)
> (In reply to Dennis 'dlan' Lan from comment #9)
> > I can confirm the latest version (4.2.2-r4) works for me. thanks for adding
> > this.
> > 
> > but it seems wrong to patch ./configure, but I haven't find any configure.ac
> > file.. may look after this later when I have time.
> 
> Y're second guessing yourself?  You patched configure and it worked. 
> configure.ac spells autotools and xen has no autotools use, so yes a
> prepared hard coded configure script to go.
so, yes, I realize this, it's hard coded configure script.

but I'm still thinking about the proper fix for upstream.
I'll dig this later, and let you know.
Comment 12 Yixun Lan archtester gentoo-dev 2013-07-31 03:01:12 UTC
(In reply to Ian Delaney from comment #10)
> (In reply to Dennis 'dlan' Lan from comment #9)
> > I can confirm the latest version (4.2.2-r4) works for me. thanks for adding
> > this.
> > 
> > but it seems wrong to patch ./configure, but I haven't find any configure.ac
> > file.. may look after this later when I have time.
> 
> Y're second guessing yourself?  You patched configure and it worked. 
> configure.ac spells autotools and xen has no autotools use, so yes a
> prepared hard coded configure script to go.

Hi Ian, I think our previous patch is still a sane fix.

"man timer_create" shows it need link with -lrt

SYNOPSIS
       #include <signal.h>
       #include <time.h>

       int timer_create(clockid_t clockid, struct sigevent *sevp,
                        timer_t *timerid);

       Link with -lrt.


and the script from xen-tools-4.2.2/tools/qemu-xen-traditional/configure

  ##########################################
  # Do we need librt
  cat > $TMPC <<EOF
  #include <signal.h>
  #include <time.h>
  int main(void) { clockid_t id; return clock_gettime(id, NULL); }
  EOF

  rt=no
  if $cc $ARCH_CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then
    :
  elif $cc $ARCH_CFLAGS -o $TMPE $TMPC -lrt > /dev/null 2> /dev/null ; then
    rt=yes
  fi


"man clock_gettime" shows

 Link with -lrt (only for glibc versions before 2.17).

and that mean start from glibc-2.17, function clock_gettime doesn't need -lrt, but timer_create still do.

xen # cat clk.c 
#include <signal.h>
#include <time.h>
int main(void) { clockid_t id; return clock_gettime(id, NULL); }

xen # gcc -o clk clk.c

xen # cat tim.c 
#include <signal.h>
#include <time.h>

int main(void) {
        clockid_t id;
        return timer_create(id, NULL, NULL);
}

xen # gcc -o tim tim.c 
/tmp/cc5AeMn8.o: In function `main':
tim.c:(.text+0x18): undefined reference to `timer_create'
collect2: error: ld returned 1 exit status

xen # gcc -o tim tim.c -lrt

xen # ls
clk  clk.c  tim  tim.c
Comment 13 Ian Delaney (RETIRED) gentoo-dev 2013-07-31 13:13:37 UTC
ok, my interpretation is it's looking fine