xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: "Éliás Tamás" <et@etit.hu>
To: xen-users@lists.xen.org, xen-devel@lists.xen.org
Subject: compilation fail, xen staging-4.6, vnc.c, qemu-tradintional issues under ubuntu 16.04
Date: Fri, 25 Mar 2016 18:53:23 +0100	[thread overview]
Message-ID: <56F57B13.7010400@etit.hu> (raw)
In-Reply-To: <alpine.OSX.2.20.1603231218290.753@mac>


[-- Attachment #1.1.1: Type: text/plain, Size: 6502 bytes --]

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


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

[-- Attachment #2: Type: text/plain, Size: 126 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

       reply	other threads:[~2016-03-25 17:53 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAOz6fc-Bx2q_waP38T4c==TLiGwOSfKeU0XHOdv-XEGrdvWW-w@mail.gmail.com>
     [not found] ` <alpine.OSX.2.20.1603231218290.753@mac>
2016-03-25 17:53   ` Éliás Tamás [this message]
2016-03-30 14:58     ` compilation fail, xen staging-4.6, vnc.c, qemu-tradintional issues under ubuntu 16.04 Dario Faggioli
2016-03-31 22:08       ` [Xen-users] " Éliás Tamás
2016-06-10 11:26       ` George Dunlap
2016-06-10 12:14         ` Ian Jackson
2016-06-10 14:55           ` Anthony PERARD
2016-06-10 15:00             ` Stefano Stabellini
2016-06-10 15:24               ` Jan Beulich
2016-06-10 15:30                 ` Jan Beulich
2016-06-10 15:38                   ` George Dunlap
2016-06-13 13:36                     ` Ian Jackson
2016-06-10 14:00         ` Anthony PERARD
2016-06-10 14:08           ` George Dunlap
2016-06-10 14:22             ` Anthony PERARD

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56F57B13.7010400@etit.hu \
    --to=et@etit.hu \
    --cc=xen-devel@lists.xen.org \
    --cc=xen-users@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).