Hi. Previously I was using debian 8 to compile my xen 4.6 with hvm stubdomain support. We recently switched to ubuntu servers, thus I needed to change my compilation environment not to have lib dependency issues. My problem is: I get the staging 4.6 xen (http://xenbits.xen.org/gitweb/?p=xen.git;a=snapshot;h=8e89d43867922abaa67e894938c655a6fa82affe;sf=tgz), installed all required prereqs for my compilaton environment, but during compilation I get errors (I do not get them using debian 8). I'm sure that all prereq is met, becasuse ./configure runs correctly, I'm using --enable-systemd --enable-stubdom ) Most of the problems could be solved by dirty hacks for myself, but I belive they require some attention of qemu/xen developers to make compilation work under ubuntu 16.04 out of the box: The first issue /usr/src/xen-staging-4.6/tools/qemu-xen-traditional-dir/vnc.c:2180: undefined reference to `gnutls_kx_set_priority' could be solved by applying these patches over the auto downloaded qemu sources: https://gitlab.com/johnth/aur-xen/raw/f9d0b40e240add9a136483a450c6a1b39a685808/qemu-xen-traditional-gnutls-compilation.patch https://gitlab.com/johnth/aur-xen/raw/f9d0b40e240add9a136483a450c6a1b39a685808/qemu-xen-traditional-gnutls-functions.patch after that I got vl.c:2784:5: error: ‘g_mem_set_vtable’ is deprecated [-Werror=deprecated-declarations] g_mem_set_vtable(&mem_trace); I had to apply https://lists.gnu.org/archive/html/qemu-devel/2015-09/msg01262.html which seemes that only partially been applied (has rejects), but after modifying the sources by hand, it seemes working. Just after this, Mini-OS failed to compile: Makefile:17: /config/MiniOS.mk: No such file or directory But, the MiniOS.mk DOES exists. I had to manually add XEN_ROOT=mysourcedir to mini-os/Config.mk to continue. and now I'm stuck here: gcc -mno-red-zone -O1 -fno-omit-frame-pointer -m64 -mno-red-zone -fno-reorder-blocks -fno-asynchronous-unwind-tables -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs -fno-stack-protector -fno-exceptions -DCONFIG_BLKFRONT -DCONFIG_TPMFRONT -DCONFIG_NETFRONT -DCONFIG_KBDFRONT -DCONFIG_FBFRONT -DCONFIG_CONSFRONT -DCONFIG_XENBUS -fno-builtin -Wall -Werror -Wredundant-decls -Wno-format -Wno-redundant-decls -Wformat -fno-stack-protector -fgnu89-inline -Wstrict-prototypes -Wnested-externs -Wpointer-arith -Winline -g -D__INSIDE_MINIOS__ -m64 -mno-red-zone -fno-reorder-blocks -fno-asynchronous-unwind-tables -isystem /usr/src/xen-staging-4.6/extras/mini-os/include -D__MINIOS__ -DHAVE_LIBC -isystem /usr/src/xen-staging-4.6/extras/mini-os/include/posix -isystem /usr/src/xen-staging-4.6/tools/xenstore/include -isystem /usr/src/xen-staging-4.6/extras/mini-os/include/x86 -isystem /usr/src/xen-staging-4.6/extras/mini-os/include/x86/x86_64 -U __linux__ -U __FreeBSD__ -U __sun__ -nostdinc -isystem /usr/src/xen-staging-4.6/extras/mini-os/include/posix -isystem /usr/src/xen-staging-4.6/stubdom/cross-root-x86_64/x86_64-xen-elf/include -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -isystem /usr/src/xen-staging-4.6/stubdom/lwip-x86_64/src/include -isystem /usr/src/xen-staging-4.6/stubdom/lwip-x86_64/src/include/ipv4 -I/usr/src/xen-staging-4.6/stubdom/include -I/usr/src/xen-staging-4.6/xen/include -isystem /usr/src/xen-staging-4.6/extras/mini-os/include -D__MINIOS__ -DHAVE_LIBC -isystem /usr/src/xen-staging-4.6/extras/mini-os/include/posix -isystem /usr/src/xen-staging-4.6/tools/xenstore/include -D__XEN_INTERFACE_VERSION__=0x00030205 -isystem /usr/src/xen-staging-4.6/extras/mini-os/include/x86 -isystem /usr/src/xen-staging-4.6/extras/mini-os/include/x86/x86_64 -c console/xenbus.c -o /usr/src/xen-staging-4.6/stubdom/mini-os-x86_64-grub/console/xenbus.o ld -r -d -nostdlib -L/usr/src/xen-staging-4.6/stubdom/cross-root-x86_64/x86_64-xen-elf/lib -m elf_x86_64 -\( /usr/src/xen-staging-4.6/stubdom/grub-x86_64/main.a app.lds -\) -L/usr/src/xen-staging-4.6/stubdom/libs-x86_64/toollog -whole-archive -lxentoollog -no-whole-archive -L/usr/src/xen-staging-4.6/stubdom/libs-x86_64/evtchn -whole-archive -lxenevtchn -no-whole-archive -L/usr/src/xen-staging-4.6/stubdom/libs-x86_64/gnttab -whole-archive -lxengnttab -no-whole-archive -L/usr/src/xen-staging-4.6/stubdom/libs-x86_64/call -whole-archive -lxencall -no-whole-archive -L/usr/src/xen-staging-4.6/stubdom/libs-x86_64/foreignmemory -whole-archive -lxenforeignmemory -no-whole-archive -L/usr/src/xen-staging-4.6/stubdom/libxc-x86_64 -whole-archive -lxenguest -lxenctrl -no-whole-archive -lpci -lz -lm --undefined main -o /usr/src/xen-staging-4.6/stubdom/mini-os-x86_64-grub/mini-os_app.o ld: warning: app.lds contains output sections; did you forget -T? ld: cannot find -lxentoollog ld: cannot find -lxenevtchn ld: cannot find -lxengnttab ld: cannot find -lxencall ld: cannot find -lxenforeignmemory Makefile:186: recipe for target '/usr/src/xen-staging-4.6/stubdom/mini-os-x86_64-grub/mini-os_app.o' failed make[2]: *** [/usr/src/xen-staging-4.6/stubdom/mini-os-x86_64-grub/mini-os_app.o] Error 1 make[2]: Leaving directory '/usr/src/xen-staging-4.6/extras/mini-os-remote' Makefile:455: recipe for target 'pv-grub' failed make[1]: *** [pv-grub] Error 2 make[1]: Leaving directory '/usr/src/xen-staging-4.6/stubdom' Makefile:106: recipe for target 'install-stubdom' failed make: *** [install-stubdom] Error 2 Can someone advise? So I belive, that these important patches / fixes are missing from xen version of qemu (at least prevents compiling it without hacks on newer systems) and also the mini-os port needs some polishing. Maybe ubuntu has newer build tools which ones causing some incompatibilities, I do not know. Is it possible fixing any of these problems? -- Éliás Tamás Thomas Elias ETIT[nwpro] KFT, Ügyvezető-Hálózatbiztonsági specialista ETIT[nwpro] Ltd, General Manager-Network security specialist Tel. HU: +36/30-497-1626 Tel. DE: +49/160-651-8723 OpenPGP pubkey: http://etit.hu/doc/et-pub.asc Okleveles mérnök-informatikus (MSC) Master of Science in Information Technology (MSC) Kapcsolat: http://etit.hu/index.php/hu/kapcsolat Jogi nyilatkozat: http://etit.hu/disclaimer-email-hu.txt Contact: http://etit.hu/index.php/en/contact Disclaimer: http://etit.hu/disclaimer-email-en.txt