Thread (15 messages) 15 messages, 8 authors, 2015-06-03

stand-alone kvmtool

From: Claudio Fontana <hidden>
Date: 2015-02-13 16:36:28
Also in: kvm, lkml

On 13.02.2015 15:40, Andre Przywara wrote:
Ciao Claudio,

On 13/02/15 14:30, Claudio Fontana wrote:
quoted
Hello Andre,

On 13.02.2015 11:39, Andre Przywara wrote:
quoted
Hi,

as I found it increasingly inconvenient to use kvmtool[1] as part of a
Linux repository, I decided to give it a go and make it a stand-alone
project. So I filtered all the respective commits, adjusted the paths in
there (while keeping authorship and commit date, of course) and then
added the missing bits to let it compile without a kernel tree nearby.
The result is now available on:

git://linux-arm.org/kvmtool.git
http://linux-arm.org/kvmtool.git
It builds fine on x86_64, but when I tried to crosscompile from x86_64 to AArch64,
I get in trouble because of libfdt: I have the aarch64 libs (static and shared), but how do I instruct the build system to get it from the right place?
You have to install them into your cross-compiler's SYSROOT.
Get the location of that by executing
$ ${CROSS_COMPILE}gcc -print-sysroot.
If it's just for libfdt, it's probably the easiest to copy them
manually, the header files into $SYSROOT/usr/include, the libraries into
$SYSROOT/usr/lib/aarch64-linux-gnu
That fixed it for me ;-)
Thanks!
For a more robust approach you would use your distribution's packaging
system to install the aarch64 package into $SYSROOT.

Cheers,
Andre.
I still prefer to be forced to understand things so I actually prefer the manual route.

Ciao,

Claudio
quoted
quoted
You can simply check it out, type make and use "./lkvm run" for a quick
test. So far I briefly tested x86-64, arm and arm64, the later two were
also cross-compiled. For sure there are rough edges in there (for
instance copying a few non-uapi header files into), but I deem it worthy
enough to get some public comments.
For me that also fixed some nasty warnings about libfdt, which now are
gone due it using your system library version of it.
I also managed to get rid of the libc-i386-dev dependency when compiling
for x86-64, but that still needs to be cleaned up and thus is not in the
current HEAD.
I haven't got around to compile-test the other supported architectures,
but supporting them should be as easy as copying over the uapi kvm.h
header file (see the respective ARM commit). Contributions (and tests!)
are welcome.

Please give it a go and tell me what you think. I don't want to fork the
project, so I am happy if someone "official" picks it up.

Cheers,
Andre.

[1] https://github.com/penberg/linux-kvm/tree/master/tools/kvm
_______________________________________________
kvmarm mailing list
kvmarm at lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help