+++ Mian M. Hamayun [2013-05-16 14:25 +0200]:
Hello Everyone,
I am reposting the following message to linaro-dev as I am using the following linaro toolchain for ARM64 cross-compilation: https://wiki.linaro.org/HowTo/BuildArm64Kernel
In fact, I am trying to compile qemu for Aarch64 but so far I haven't been able to configure qemu for this purpose.
I didn't think qemu had aarch64 support. Has that been done now?
Do you have a pointer to the sources so you are using so I can try it myself?
You mention this as something you tried second: ssh://git.linaro.org/srv/git.linaro.org/git/people/jcrigby/qemu-aarch64.git
I'll have a go with that.
My first objective is to just configure and cross-compile qemu for Aarch64, which is currently blocked by the qemu's dependency on cross-compiled "glib-2.12" or later. For example, when I use the following configure command:
./configure --cross-prefix=aarch64-linux-gnu- --target-list=arm-softmmu --enable-fdt --static
I get the following error: ERROR: glib-2.12 required to compile QEMU
This is a well-known dependency and the following pages are linked to this issue (directly or indirectly) and I have tried all of them without any success:
https://bugs.launchpad.net/linaro-oe/+bug/1097561 http://people.debian.org/~wookey/bootstrap.html http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompili... https://wiki.linaro.org/Platform/DevPlatform/CrossCompile/arm64bootstrap
Well, there is an arm64 glib2.0 in my repo, so that's a good start: http://people.debian.org/~wookey/bootstrap/ubunturepo/pool/main/g/glib2.0/
Making qemu easily cross-compilable is on my list anyway so lets have a look. Checking the debian package I find a build-deps list as long as your arm:
Build-Depends: debhelper (>= 9), # In comments below we also specify (system-specific) arguments # to qemu's configure script, -- optional features which depend # on build-dependencies. # pc-bios/*.dts => *.dtb (PPC firmware) device-tree-compiler, texi2html, texinfo, python, # --enable-linux-aio linux-* libaio-dev [linux-any], # --audio-drv-list=pa,alsa,sdl,oss linux-* # --audio-drv-list=pa,oss,sdl kfreebsd-* libasound2-dev [linux-any], # for virtfs # --enable-attr libattr1-dev, # --enable-bluez linux-* libbluetooth-dev [linux-any], # --enable-brlapi libbrlapi-dev, # --enable-virtfs linux-* # needed for virtfs libcap-dev [linux-any], # --enable-cap-ng linux-* libcap-ng-dev [linux-any], # --enable-curl libcurl4-gnutls-dev, # --enable-fdt libfdt-dev, # --enable-vnc-tls # --enable-vnc-ws libgnutls-dev, # --enable-curses libncurses5-dev, # --with-system-pixman libpixman-1-dev, # audio-drv-list += pa libpulse-dev, # --enable-vnc-sasl libsasl2-dev, # --enable-sdl libsdl1.2-dev (>> 1.2.1), # --enable-seccomp linux-amd64|linux-i386 libseccomp-dev (>> 1.0.0) [linux-amd64 linux-i386], # --enable-spice linux-amd64|linux-i386 libspice-server-dev (>= 0.12.2~) [linux-amd64 linux-i386], # needed for sdl libx11-dev, # --enable-xen linux-amd64|linux-i386 libxen-dev [linux-amd64 linux-i386], # XXX need to check minimum linux-headers requiriment linux-libc-dev (>= 2.6.34) [linux-any], # --enable-uuid uuid-dev, # --enable-xfsctl linux-* xfslibs-dev [linux-any], # always needed zlib1g-dev, # other optional features we enable # --enable-vnc # --enable-vnc-png # --enable-kvm linux-* # --enable-vhost-net linux-* # is it really linux-specific? ##--enable-glusterfs todo # --enable-rbd librados-dev, librbd-dev, Build-Conflicts: oss4-dev
But at least helpfully commented about options. Which parts of that do you need? Will 'really basic' do?
Anyways, I want to know how we can resolve this dependency ?
Ideally you'd be able to do apt-get install libglib2.0-dev:arm64 in a raring chroot (pointing at the arm64 bootstrap/port repo), but I find that there is currently version skew in libpcrecpp0 and libstdc++6
Now that raring has stopped moving it's worth updating these arm64 builds to match and give a stable build base, so I'll do that today and see if things get a bit easier, and get back to you.
Some of you might suggest to cross-compile the glib-2.12 from sources found at:
That shouldn't be necessary - that's been done already.
Wookey